AList+云盤+LskyPro · 搭建大容量圖床服務(wù)
?“圖床”是用于存放圖片的空間,基于圖床可以快捷地實現(xiàn)圖片分享,便于日常使用和前端開發(fā)。
Lsky Pro(蘭空圖床) 是一款基于 PHP 開發(fā)的開源圖床項目,界面美觀且易于操作,目前支持
本地存儲
、AWS S3
、阿里云 OSS
、騰訊云 COS
、七牛云
、又拍云
、SFTP
、FTP
、WebDAV
、Minio
等多類存儲服務(wù)。Lsky Pro 的優(yōu)勢在于其支持
WebDAV
協(xié)議,因此我們可以使用 AList 綁定個人網(wǎng)盤(如阿里云盤、百度網(wǎng)盤、天翼云盤、夸克網(wǎng)盤等),將 AList 提供的WebDAV
服務(wù)作為圖床的存儲策略,進而充分利用云盤空間,通過圖床將圖片托管到個人網(wǎng)盤。
注意:一個良好的圖床服務(wù)應(yīng)當(dāng)與 CDN 搭配以實現(xiàn)更快的加載速度,本文搭建的圖床僅作為個人使用的圖片托管平臺。
I. 效果展示




LskyPro 蘭空圖床官方文檔:https://docs.lsky.pro
AList 官方文檔:https://alist.nn.ci
注意:在部署開始前你應(yīng)該擁有一臺公網(wǎng)服務(wù)器,另外,以下步驟依賴于 Docker、Nginx 和 AList,請?zhí)崆鞍惭b相關(guān)依賴并配置,本文檔只對 LskyPro 圖床的搭建步驟和必要的注意事項進行介紹。
在個人網(wǎng)盤中創(chuàng)建 lskypro-image
文件夾,這里以天翼云盤為例,并在 AList 中將該文件夾掛載到路徑 /image
,如下圖所示:


以上步驟完成后,訪問 DAV
鏈接并通過身份校驗后,即可進行圖片的上傳與訪問。假設(shè) AList 綁定的公網(wǎng)域名為 alist.domain.name.cn
,則圖片存儲服務(wù)的 DAV
鏈接為:https://alist.domain.name.cn/dav/image
。
LskyPro 圖床服務(wù)依賴于多個PHP插件,為了方便部署,我們采用 Docker 的方式安裝 ,命令如下:
注意,如果在 Nginx 配置中開啟了 HTTPS ,需要執(zhí)行以下命令修改圖床項目源碼,否則前端頁面布局將被打亂:
假設(shè)圖床服務(wù)的域名為 image.domain.name.cn
,AList 部署在本地端口 4015
,在 nginx.conf
中添加如下配置項:
Nginx 配置說明
上傳至圖床的圖片應(yīng)該是可公開訪問的,為此我們在以上 Nginx 配置中增加了 “轉(zhuǎn)發(fā) AList 圖片直鏈訪問請求” 配置項。經(jīng)過以上配置,客戶端通過訪問 https://image.domain.name.cn/img/${img_path}
即可直接獲取圖片,無需進行身份驗證。
以上步驟完成后,瀏覽器訪問圖床服務(wù)(https://image.domain.name.cn)可進入如下圖所示的配置頁面。配置頁面將引導(dǎo)我們設(shè)置數(shù)據(jù)庫服務(wù),為了減輕工作量,我們直接使用本地 SQLite 數(shù)據(jù)庫,數(shù)據(jù)庫路徑留空即可(將自動在服務(wù)根目錄的 database
目錄下創(chuàng)建 database.sqlite
文件),同時需要設(shè)定管理員郵箱和登錄密碼。

配置完成后根據(jù)引導(dǎo)進入圖床首頁。

登錄管理員賬戶,點擊側(cè)邊欄的 “存儲策略” 進入圖片文件存儲的相關(guān)配置,創(chuàng)建一個新的存儲策略。

默認存儲策略為本地存儲,為了不占用服務(wù)器空間,我們這里使用 AList 提供的 WebDAV 服務(wù)創(chuàng)建一個新的存儲策略,配置項如表所示,其中訪問域名即為圖片直鏈對應(yīng)的域名和路徑。
注意:記得選中角色組,否則存儲策略不會生效。


設(shè)置 WebDAV 存儲策略

WebDAV 存儲策略添加后可以將默認本地存儲策略刪除,防止用戶將圖片上傳至本地服務(wù)器。
吐槽一下小破站的專欄功能,不支持 Markdown 太不人性化了,一篇文章調(diào)格式調(diào)了很久...
IV.?
不少小伙伴通過寶塔面板安裝時遇到 WebDAV 配置錯誤的問題,經(jīng)過排查,發(fā)現(xiàn)原因是 lskypro 開源項目的發(fā)布包存在問題,需要下載源碼自行安裝依賴,這里對主要步驟進行介紹。(參考:https://zhuanlan.zhihu.com/p/539654562)
注:請自行安裝寶塔面板(寶塔面板官網(wǎng)),注意 PHP >= 8.0.2
A. 安裝 PHP 擴展
進入 PHP 設(shè)置 → 安裝擴展,選擇安裝 fileinfo, imagemagick 和 exif,如下圖所示:

B. 取消 PHP 禁用函數(shù)
進入 PHP 設(shè)置 → 禁用函數(shù),刪除 proc_open(用于后續(xù)編譯)、 exec、shell_exec、readlink、symlink、putenv、getenv,如下圖所示:


打開 Shell 命令行工具,執(zhí)行以下命令:
注:composer install
命令執(zhí)行依賴于函數(shù) proc_open
,操作完成后會在源碼目錄下生成 vendor
目錄。


進入偽靜態(tài)設(shè)置,粘貼以下內(nèi)容:

打開 Shell 命令行工具,執(zhí)行以下命令更改用戶組和讀寫權(quán)限:

接下來就能夠正常顯示 WebDAV 的配置頁面了
