
Jekyll個人網頁是個好技術,github.com是個好網站,不過存儲容量和流量的限制是個頭痛的事情,當然,也在情理之中。
好在我們生於“雲”的時代,有很多辦法來擴展我們的世界。在引用圖片方面,主要的要求就是服務商可以提供外鏈。由於在國內,我們的選擇少了一些,不過還是有幾個優選的:
- 百度圖片,網址是https://timgsa.baidu.com,圖片可以外鏈,缺點是路徑太長,在Markdown源文件中看起來很丑也難操作。另外圖片來源主要靠搜索,難以表達自己的精確要求。
- 新浪圖片,在微博中上傳的圖片就可以使用,外鏈的地址是:http://sinaimg.cn。當然對於微博用戶來說,一堆跟微博本身毫無關關聯的圖片看起來有點讓人費解,不過用起來還是很好用的。
- 七牛雲,也是個良心商家,至少當前還是,只需要實名認證一下就有免費賬號可以用。而且做為一個開發者的服務平台,提供了豐富的API來進行自動化的管理,支持圖片、視頻等一切可存儲的對象。這也是我當前的主存站和今天的主題。
七牛的注冊、認證這里就不說了,控制台的網址是https://portal.qiniu.com/。關鍵要說的是對於普通人員用起來感覺困難的地方:
- 如果你是程序員,當然最好的辦法是根據api使用文檔編寫自己的接口,完成徹底的自動化工作。api文檔地址是:https://developer.qiniu.com/kodo
- 如果你懶得自己寫,七牛有一組用這些API開發的工具供你選擇,這些工具包括Windows之下的同步上傳工具,命令行的QShell,還有另外兩款輔助工具和遷移工具。我們今天的重點說QShell,說明及下載地址是:https://developer.qiniu.com/kodo/tools/1302/qshell
- 首先在七牛網頁控制台個人中心->秘鑰管理中查詢自己的AK和SK,這兩個秘鑰可好好記錄下來。
- 在控制台添加對象存儲功能,添加時要填寫一個存儲的名字還有選一個服務器地理位置。添加完成從控制台左側選擇對象存儲圖標,屏幕右上角的位置會出現一個為你臨時生成的域名xxxxx.bkt.clouddn.com,將來你存儲到七牛雲的文件,可以使用這個域名訪問。七牛雲專門說了這個域名是臨時測試使用的,有訪問次數和流量的限制,不過據說對於個人博客來說一般都夠用了。不夠用的可以根據說明捆綁域名。
- 下載的qshell改一個短一點你喜歡的名字,我就直接叫
qshell了,使用chmod +x qshell設置執行權限,然后移動到/usr/local/bin文件夾以便隨時調用。 - 第一次使用首先執行
qshell account 你的ak 你的sk,這回在~/.qshell/生成一個文件account.json文件,其中保存了你的賬戶信息,以后執行qshell各項功能,就不需要再次登陸了。 - 在電腦本地選擇一個文件夾作為對應雲端存儲的本地空間,為了說明方便,我們假定是
~/fileStorage/,在之下可以建立自己的目錄結構並存儲自己的各項文件,將來上傳后,~/fileStorage/下面保存的文件,就對應到你七牛測試域名的根目錄。隨后在你的工程下面建立一個upload.conf文本文件,內容為:
{
//使用時請刪除這些注釋行
//本地存儲路徑
"src_dir" : "~/fileStorage",
"bucket" : "你的存儲名",
//下面幾項不用解釋了吧,懂的就懂了,不懂翻譯成中文還是不明白
"check_hash" : true,
"check_exists" : true,
"check_size" : true,
"rescan_local" : true,
//上傳時保持目錄結構
"ignore_dir" : false
}
- 假設你有一個文件,
~/fileStorage/abc/def.jpg,上傳后,使用http://xxxxx.bkt.clouddn.com/abc/def.jpg就能訪問到。在你的jekyll文章中,使用可以把這張圖片插入到你的文章中。 - 上傳的命令為:
qshell qupload upload.conf,我一般把git的操作及qshell操作一起寫入一個腳本,每次寫完執行一次就同時完成了文章的上傳和圖片的上傳。不怕獻丑,貼出來我的腳本給你參考一下:
#!/bin/bash
git add .
git commit -m "$1"
git push
qshell qupload qshellupload.conf
#此外,qshell還可以增加一個線程數參數,來並行上傳加快速度,比如下面這條8線程上傳:
#qshell qupload 8 qshellupload.conf
