1. 程式人生 > >使用七牛雲作為圖床獲取外鏈方式總結

使用七牛雲作為圖床獲取外鏈方式總結

一、圖床的選擇

相信大部分技術人寫作都用的是 markdown 輕量級標記語言進行部落格寫作,這種寫作讓我們不用像使用 word 那樣那麼麻煩地調整排版和格式,只需專心內容寫作並且照樣排版完美的一種方式。但是,基本所有支援 markdown 本地寫作工具都只能採用匯入本地圖片引用的方式,對於一篇需要大量圖片闡述的文章以及該文章上傳至網路圖片丟失,這不得不是個很糟糕的問題。那麼有什麼比較好的解決方式嗎?額,很多人採用的圖片寄存於網路,用服務廠商作為圖片儲存的地方,大家都叫為「圖床」,好了,那像 CSDN 部落格、簡書平臺不是都可以嗎?哈哈,是的,它們平臺寫文章的時候都可以匯入圖片然後得到一個圖片網路地址。但是,圖片數量多,這不是賊煩嘛!

好了,那有專門可以作「圖床」功能的服務商嗎?有的,比如七牛雲。

網上谷歌搜下還是能搜到很多圖床網站的,哈哈,先隨便列舉一些:(以下按照谷歌搜尋排名順序來的)

看下別人的推薦吧:

—————————————————————–總結—————————————————————————-

1、圖床分類:

  • 公共圖床
  • 自建圖床:雲服務(如七牛雲、又拍雲、阿里雲OSS)
  • 自建圖床:開源方案 (如 Lychee 開源方案、樹洞外鏈)

目前圖床可以分為兩種,一種是公共圖床,一種是自建圖床。 公共圖床也就是利用公共服務的圖片上傳介面,來提供圖片外鏈的服務,比如「微博圖床」。自建圖床,也就是利用各大雲服務商提供的儲存空間或者自己在 VPS 上使用開源軟體來搭建圖床,儲存圖片,生成外鏈提供訪問,比如七牛雲、Lychee 開源自建圖床方案。

目前自建圖床方案有兩種,一種是利用雲服務商提供的儲存服務來作為圖床,通過 API 來管理圖片,另一種是在 VPS 上安裝開源的圖片或檔案管理程式,只要能提供外鏈,基本都可以作為圖床來用。

圖床服務最重要的是穩定性,大廠的雲服務也都比較有保障,大家只要考慮下價格和易用性就可以了。就我個人而言,我首先推薦七牛,它的價格比較厚道,免費使用者也有一定額度,資料可以自己掌控,另外各大平臺的圖床工具也基本都支援,易用性很高。其次推薦微博圖床,對於不是很重要的圖片,都可以存到微博圖床,畢竟流量儲存都免費,速度也不錯。至於圖床工具,就看自己的喜好了,只要順手就行。但是不論選擇哪一個服務或者工具,我覺得首先要自己可以掌控資料。

總之,適合自己的才是最好的。

2、圖床工具:

雖然圖床選擇好,但是對普通使用者來說,直接使用圖床 API 很麻煩,我們可以藉助一些工具方便的上傳圖片,下面就根據 macOS、Windows、Web 分別推薦幾款工具。

  • Windows:

    • MPic 目測是 Windows 上唯一的圖床工具了,目前只支援七牛,把圖片拖拽到軟體視窗中就能上傳。

  • Web: 使用 Web 技術開發的圖床工具一抓一大把,大部分都基於七牛和微博圖床 API,這裡就介紹兩個體驗不錯的吧。比如「極簡圖床」、「微博圖床」等等。

  • 指令碼:如果你對上面的產品不滿意,並且你會折騰的話,可以使用這個指令碼來完成圖片上傳:Markdown 圖片實用工具 , 該指令碼使用 Python 版的七牛 SDK 來實現上傳功能,你可以按照相關介紹,搭配 Alfred 來快速完成圖片上傳。

二、七牛雲圖床教程

先介紹下七牛:

七牛 是一個雲端儲存服務商,註冊並實名認證之後1後,你將免費享有 10GB 儲存空間,每月 10GB 下載流量、100 萬次 GET 請求、 10 萬次 PUT/DELETE 請求。七牛的定位不是像百度雲一樣的 網盤 ,也不是同堅果雲一般的 同步雲 ,而是 CDN 2 ,讓你在瀏覽網頁的時候最快的接收到頁面中的圖片、音訊等檔案,所以非常適合個人、企業使用者用來儲存站點資源。對於個人博主來說,你可以把部落格中的圖片、音訊、視訊等媒體上傳到七牛,在部落格中引用;也可以將站點需要載入的CSS、JS等檔案上傳到七牛,以加速網站。

網上對七牛雲的評價:

  • 七牛雲為實名認證的個人使用者提供 10Gb 的儲存空間,提供命令列工具管理圖片,在後臺可批量修改圖片屬性。

  • 七牛雲是國內口碑不錯的一個雲端儲存為主的公司。它的特點應該就在圖片儲存上,有非常方便的上傳SDK和圖片處理流,用來作為部落格圖床非常合適,而且價格不貴,每月有免費的10G流量。

  • ….

2.1 最原始上傳

大概步驟分為以下幾步:

  1. 七牛雲 網站註冊;

  2. 實名認證(實名認證了才能享受 免費 10Gb 儲存空間;實名認證需要「本人手持身份證」的正反面兩張照片,請提前準備好);

  3. 點選「管理控制檯」;

  4. 「資源主頁」–> 點選「物件儲存」,立即新增(即建立儲存空間,七牛雲把這個叫作”Bucket“),其中包括以下三個項:

    • 儲存空間名稱:儲存空間名稱作為唯一的 Bucket 識別符
    • 儲存區域:區域選擇自己附近的
    • 訪問控制:作為圖床的話,訪問控制只能選擇為「公開空間」

    點選建立,ok。

  5. 然後開啟儲存空間,選擇內容管理,點選上傳檔案,上傳你所需要用到的圖片;

  6. 上傳完成後,在儲存空間檔案列表中點選某一檔案的右側按鈕,可以看到外鏈地址,複製貼上即可用。

想看圖片形式的操作,可以參考該文:使用七牛雲端儲存做圖床

現在來看看一張圖片上傳圖片所經歷的步驟:

  1. 上傳圖片
  2. 複製外鏈
  3. 貼上到 Markdown

一張圖片用了四步吶,想想圖片多,那不是作死嘛。

那有什麼方法嗎?當然有,方法有三個:

一、七牛雲外掛上傳:簡單

二、使用 dropzone 上傳:方便

三、使用命令列上傳:快捷,尤其適合需要目錄及協作的團隊

, 其中有個「QSunSync」的 Windows 版本圖片同步上傳客戶端。

2.2 七牛雲外掛上傳:簡單

  • 還可以利用線上「極簡圖床」工具,預設使用的為公共圖床 sm.ms,但是也可以自定義的,自定義圖床為七牛雲圖床,方法如下:

    在最前面有關七牛雲的註冊等等操作,前面已經講了,不絮叨了,之後:

    1. 在“個人面板”->“金鑰管理”中檢視 AccessKey/SecretKey;

    2. 在儲存空間的“空間概覽”裡,記住這裡的“測試域名”;

    3. 在「極簡圖床」上配置上剛才七牛儲存的“空間名稱”、“AccessKey”、“SecretKey”、“域名”後,儲存。然後就可以上傳到自己專屬的七牛空間上了。

      • “AccessKey”、“SecretKey”:在“個人面板”->“金鑰管理”中檢視AccessKey/SecretKey

      • “域名”:在儲存空間的“空間概覽”裡可以看到

2.3 使用 dropzone 上傳:方便

這兩篇文章已經寫得很清楚了,大家按照以下兩篇文章操作即可

2.4 使用命令列上傳

1、qshell

使命命令列方式,可以不用手動上傳檔案到七牛,它會自動幫你將本地目錄的檔案同步到七牛之前設定的儲存空間下。

詳細教程,參考「參考資料」②文章的方法三,但是參考資料②中所說的 qrsync 已經失效,現在使用的 qshell 命令列,操作方式其實類似。

先引用官方的 qshell 介紹:

qshell是利用七牛文件上公開的API實現的一個方便開發者測試和使用七牛API服務的命令列工具。該工具設計和開發的主要目的就是幫助開發者快速解決問題。目前該工具融合了七牛儲存,CDN,以及其他的一些七牛服務中經常使用到的方法對應的便捷命令,比如b64decode,就是用來解碼七牛的URL安全的Base64編碼用的,所以這是一個面向開發者的工具,任何新的被認為適合加到該工具中的命令需求,都可以在ISSUE列表裡面提出來,我們會盡快評估實現,以幫助大家更好地使用七牛服務。

2、hexo-qinqiu-sync

筆者在該篇文章所看到:優雅的使用七牛做圖床, 裡面這麼說:

先是用了下很多人提到的這個外掛hexo-qiniu-sync, 然而效果實在是大跌眼鏡,在我這主要有這兩個問題:………….

……

然後發現了 qshell ….

然後,我換了種思路,在source資料夾下新建個圖片資料夾,和文章相關的圖片放到這裡,再把這個資料夾內容同步到七牛,然後在部落格使用七牛連結就好了唄,恰好發現官方有這個工具qshell,基本滿足我的想法。

…….

好吧,這麼看來,還是用 qshell 這個合適。

2.5 圖片優化

三、筆者最後使用的方法

由於筆者用的 windows,並且對圖片上傳的強烈要求不大,只要能保證方便上傳圖片就行,目前暫且就考慮以下幾種方式。

  1. 第一種:使用本文一開始提到的谷歌搜尋「圖床」那些線上圖床進行上傳就是,比如 SM.MS,不過可的可能會有某些限制,比如「小賤賤圖床 」每日上傳圖片限制數:20張。

  2. 第二種: 使用本文提到Chrome瀏覽器外掛 qiniu upload files 外掛,填寫空間名稱、AK、SK、域名等設定即可從電腦拖拽圖片至瀏覽器即可完成上傳,得到外鏈地址。

  3. 第三種: 使用本文提到的 極簡圖床,設定七牛云為圖床,填寫空間名稱、AK、SK、域名、樣式,上傳圖片即可得到外鏈地址。PS:其中,樣式為可選設定,其作用是 通過新增七牛樣式字尾,實現水印、縮圖功能,檢視使用說明

  4. 第四種: 使用本文提到的 Windows 下目測唯一的上傳工具 MPic ,首先下載下來,然後:

    1. 開啟檔案,啟動程式請點選MPic.exe,為方便啟用可點選右鍵傳送到‘桌面快捷方式’。
    2. 使用前先設定七牛雲端儲存賬號,即輸入七牛雲空間名、AK、SK、域名,儲存;
    3. 然後就可以直接拖拽圖片至客戶端就能上傳。

    說明:下載的檔案中包含的 CSkin.dll 檔案,它是程式的核心檔案,請與 MPic.exe 檔案保持在同一目錄中;需要檢視歷史上傳記錄請點選‘我的上傳’即可檢視。

  5. 第五種:① 使用官網 開發者工具頁面 的「QSunSync」同步上傳windows客戶端,親測了下,沒有成功,還不知道哪的問題;② 或者使用官網的開發者工具頁面的 qshell 工具(基於七牛 API 服務的命令列工具),教程都在官網。

考慮到可以繫結七牛雲,我最後考慮了第二、第三、第四種方式(這幾種方式都可以繫結七牛云為圖床),也都差不多,都可以選擇。當然不考慮繫結註冊過的圖床,只是偶爾上傳圖片而已,就用 SM.MS 這個也 ok。

參考資料: