交流評論、關注點贊

  • Facebook Icon臉書專頁
  • telegram Icon翻牆交流電報群
  • telegram Icon電報頻道
  • RSS訂閱禁聞RSS/FEED訂閱

Hexo+IPFS搭建個人免伺服器獨立博客

2017年09月07日 8:06 PDF版 分享轉發

很多人都折騰過個人博客,租免費空間,vps,綁定域名等等,可一直被各種各樣的問題折磨著,配置伺服器、配置github、打包部署等等…,博主也如此折騰過,直至基於的星際文件系統(IPFS)出現,博主就想乾脆直接將博客掛在了IPFS的區塊鏈上,不再要折騰伺服器,不再要各種配置,只要買個域名,安心寫博文就行,如此方便。下面就一步步介紹如何使用IPFS來實現免伺服器Hexo博客。

來源: http://esgbox.com/20170413.html
一些IPFS網站:https://amp.reddit.com/r/ipfs/comments/63ev6h/list_of_ipfs_websites/

Ad:美好不容錯過,和家人朋友一起享受愉快時光,現在就訂票

配置

1. 配置Hexo

Hexo是一款基於Node.js的靜態博客框架,安裝Hexo需要用到Nodejs,作用是用來生成靜態頁面,到Node.js官網下載相應平台的最新版本,一路安裝即可。

1.1 安裝Hexo

Node安裝好后,首先創建一個文件夾,如blog,用戶存放hexo的配置文件,然後進入blog里安裝Hexo。
執行如下命令安裝Hexo:
npm install -g hexo

1.2 初始化

然後,執行init命令初始化hexo,命令:
hexo init
好啦,至此,全部安裝工作已經完成!blog就是你的博客根目錄,所有的操作都在裏面進行。

1.3 生成靜態頁面

hexo generate(hexo g也可以)

1.4 本地啟動

啟動本地服務,進行文章預覽調試,命令:
hexo server
瀏覽器輸入http://localhost:4000
我不知道你們能不能,反正我能,因為我的環境都配置好了,如果無法看到hexo頁面,請自行百度查找原因。

2. 配置IPFS

IPFS是點對點協議InterPlanetary File System的簡稱,它是一個面向全球的、點對點的分散式版本文件系統,試圖將所有具有相同文件系統的計算設備連接在一起。
近日,IFPS宣布了一個未來web發展計劃,它用基於內容的地址替代基於域名的地址,也就是用戶尋找的不是某個地址而是儲存在某個地方的內容,不需要驗證發送者的身份,而只需要驗證內容的哈希,通過這樣可以讓網頁的速度更快、更安全、更健壯、更持久。IPFS表示,IPFS未來將替代HTTP(以及其他的許多東西)。

2.1 安裝IPFS

至官網下載對應版本,一路安裝即可,筆者是64位win10系統,下載對應zip解壓后,將ipfs.exe添加到%PATH%。
測試是否安裝成功:ipfs help
出現 USAGE:
ipfs – Global p2p merkle-dag filesystem.

即可。

2.2 啟動本地IPFS節點

第一步:先初始化IPFS
ipfs init
第二部:打開節點
ipfs daemon
此時,你可以在http://localhost:5001/webui,打開自己的操作台。

2.3 將Hexo博客部署到IPFS節點上

Hexo是一個靜態博客生成器,執行hexo generate后,會在博客目錄生成/Public目錄,該目錄即為全部博客內容
執行 ipfs add -r public
得到:added QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx public
QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx即為博客網站的site_hash,你可以通過任意運行IPFS的節點訪問,如:http://localhost:8080/ipfs/$SITE_HASH,也可以通過官方運行的節點訪問:http://gateway.ipfs.io/ipfs/$SITE_HASH。

2.4 綁定獨立域名

剛才,我們通過ipfs add,將博客發布到了IPFS運行的區塊鏈節點上,但複雜的site_hash並不友好,我們可以使用IPNS技術,通過綁定獨立域名來實現與現有的網站訪問並無任何不一樣的體現。我們假設你已經有一個可以正常使用的域名,如aa.com,沒有域名的可以到任意域名服務商初購買。
首先,我們將網站發布
執行 ipfs name publish QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx
得到 Published to QmV61ui6H9qX3126yGH846dPkMgSe7SZcDxrVwm2gxTidu: /ipfs/QmXJJm7aydK22eF1BdKVozcXH5Ltm8ZwbFHo3c36hi9qUx
記住QmV61ui6H9qX3126yGH846dPkMgSe7SZcDxrVwm2gxTidu為你的peerid,該hash是保持不變的。
那好,我們現在只需要將aa.com解析到上述地址即可,添加TXT記錄為dnslink=/ipns/QmV61ui6H9qX3126yGH846dPkMgSe7SZcDxrVwm2gxTidu,同時將域名A記錄指向任意ipfs節點的ip,如gateway.ipfs.io。
現在訪問aa.com,你是不是發現已經可以正常訪問你剛才生成的博客了。當然,在沒有優化之前,訪問會很慢,但可以打開。
由於IPNS還不穩定,你可以在http://ipfs.io/ipfs/QmeaNWtacNyWZxEphYCdVmF6bcMg7Bjn6e5sGdK6fr1nMx 查看本頁面。

更新與優化

上面講的是hexo博客的生成與部署,你可以對Hexo進行進一步的配置和優化,發表新的文章,然後hexo g生成新的public,再通過ipfs add即ipfs publish即可實時更新在線博客。
怎麼樣,是不是很神奇,沒有伺服器,沒有各種折騰,你有了一個獨立博客。小夥伴們,一起努力吧!!!

喜歡、支持,請轉發分享↓Follow Us 責任編輯:宋伯明