lecms程序lsky pro + alist 图床插件 ,兼容火车头发布,兼容草稿箱发布,兼容用户前台,管理员后台发布
lsky pro + alist配置如下:
I. 效果展示
传送门 → LeoHao' s Image Hub



II. 官方文档
LskyPro 兰空图床官方文档:https://docs.lsky.pro
AList 官方文档:https://alist.nn.ci
III. 部署步骤
注意:在部署开始前你应该拥有一台公网服务器,另外,以下步骤依赖于 Docker、Nginx 和 AList,请提前安装相关依赖并配置,本文档只对 LskyPro 图床的搭建步骤和必要的注意事项进行介绍。
并不是特别依赖docker 可以进行宝塔部署
Step1. 配置安装服务
安装
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install
更新
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s update
卸载
curl -fsSL "https://alist.nn.ci/v3.sh" | bash -s uninstall
自定义路径
默认安装在 /opt/alist
中。 自定义安装路径,将安装路径作为第二个参数添加,必须是绝对路径(如果路径以 alist 结尾,则直接安装到给定路径,否则会安装在给定路径 alist 目录下),如 安装到 /root
:
# Installcurl -fsSL "https://alist.nn.ci/v3.sh" | bash -s install /root# updatecurl -fsSL "https://alist.nn.ci/v3.sh" | bash -s update /root# Uninstallcurl -fsSL "https://alist.nn.ci/v3.sh" | bash -s uninstall /root
启动:
systemctl start alist
关闭:
systemctl stop alist
状态:
systemctl status alist
重启:
systemctl restart alist
获取密码
需要进入脚本安装AList的目录文件夹內执行如下命令
低于v3.25.0版本
./alist admin
高于v3.25.0版本
3.25.0以上版本将密码改成加密方式存储的hash值,无法直接反算出密码,如果忘记了密码只能通过重新 随机生成
或者 手动设置
# 随机生成一个密码./alist admin random# 手动设置一个密码,`NEW_PASSWORD`是指你需要设置的密码./alist admin set NEW_PASSWORD
Step2. 配置 AList WebDAV 服务
在个人网盘中创建 lskypro-image
文件夹,这里以天翼云盘为例,并在 AList 中将该文件夹挂载到路径 /image
,如下图所示:
这里的image就是alist管理里面挂在的路径,一定要看好


以上步骤完成后,访问 DAV
链接并通过身份校验后,即可进行图片的上传与访问。假设 AList 绑定的公网域名为 alist.domain.name.cn
,则图片存储服务的 DAV
链接为:https://alist.domain.name.cn/dav/image
。这里的老版本外链图片,无需验证,但是新版本需要验证!
这里可以是直连,直连是https://alist.domain.name.cn/d/image
。新版本可直接外链使用
Step2. 启动 LskyPro 图床容器服务
LskyPro Docker/未测试
LskyPro 图床服务依赖于多个PHP插件,为了方便部署,我们采用 Docker 的方式安装 ,命令如下:
# 创建容器并启动(宿主机4003端口可自行更改)
sudo docker run -d --name lskypro --restart unless-stopped -p 4003:80 -v /data/lskypro:/var/www/html coldpig/lskypro-docker:latest
Step3. 修改 Nginx 配置项
注意,如果在 Nginx 配置中开启了 HTTPS ,需要执行以下命令修改图床项目源码,否则前端页面布局将被打乱:
sudo docker exec -it lskypro sed -i '32 a \\\Illuminate\\Support\\Facades\\URL::forceScheme('"'"'https'"'"');' /var/www/html/app/Providers/AppServiceProvider.php
假设图床服务的域名为 image.domain.name.cn
,AList 部署在本地端口 4015
,在 nginx.conf
中添加如下配置项:(下方的版本是alist老版本,可以直连访问,也可使用dav/image)
#Lsky Pro | Image Hub
server {
listen 80;
listen 443 ssl;
server_name image.domain.name.cn;
# HTTPS 需要指定 SSL/TLS 证书路径
ssl_certificate cert/image.domain.name.cn.pem;
ssl_certificate_key cert/image.domain.name.cn.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
# 转发图床服务请求
location / {
# 转发端口 4003 与 Step2 中设定的宿主机端口保持一致
proxy_pass http://localhost:4003;
proxy_read_timeout 600s;
}
# 转发 AList 图片直链访问请求
location /img {
proxy_pass http://localhost:4015/d/image;
proxy_read_timeout 600s;
}
}
Nginx 配置说明
上传至图床的图片应该是可公开访问的,为此我们在以上 Nginx 配置中增加了 “转发 AList 图片直链访问请求” 配置项。经过以上配置,客户端通过访问 https://image.domain.name.cn/img/${img_path}
即可直接获取图片,无需进行身份验证。
Docker安装教程结束
宝塔安装教程:
下载正式版本
兰空图床的每个版本都是通过 github 发布,下载正式版本请访问 https://github.com/lsky-org/lsky-pro/releases
如果你不是开发者,请不要下载名称为 Source Code
的压缩包,此为核心源代码,需要自己安装拓展。
运行环境配置
需要关闭
open_basedir
,否则会有意想不到的错误。简单来说,open_basedir 是用来限制 PHP 读取目录。安装 nginx 或 apache,PHP 8.0.2+,然后为 php 安装上必须的拓展。详见:安装要求 章节
准备安装
将安装包上传至站点目录然后解压,将站点的运行目录指向程序的
public
文件夹
nginx 需要设置伪静态,内容如下
location / { try_files $uri $uri/ /index.php?$query_string; }
将程序所在目录的所有文件夹、子文件夹、文件的权限,用户组和所有者改为
www
,权限改为0755
通常情况下,Web 站点目录的所有者和用户组为
www:www
若未正确设置权限,在后续的使用过程中可能会因为权限导致文件无法读取、无法写入、创建文件夹等一系列问题。
开始安装
配置好域名以后,访问站点 首页 ,程序会自动跳转至安装页面,环境检测通过以后即可通过引导进行安装。
安装要求
PHP >= 8.0.2
BCMath PHP 扩展
Ctype PHP 扩展
DOM PHP 拓展
Fileinfo PHP 扩展 宝塔php安装扩展
JSON PHP 扩展
Mbstring PHP 扩展
OpenSSL PHP 扩展
PDO PHP 扩展
Tokenizer PHP 扩展
XML PHP 扩展
Imagick 拓展 宝塔php安装扩展
exec、shell_exec 函数 宝塔php删除函数
readlink、symlink 函数 宝塔php删除函数
putenv、getenv 函数 宝塔php删除函数
支持的数据库
Mysql 5.7+
PostgreSQL 9.6+
SQLite 3.8.8+
SQL Server 2017+
宝塔安装结束:
Step4. 配置 LskyPro 图床
A. 数据库配置
以上步骤完成后,浏览器访问图床服务(https://image.domain.name.cn)可进入如下图所示的配置页面。配置页面将引导我们设置数据库服务,为了减轻工作量,我们直接使用本地 SQLite 数据库,数据库路径留空即可(将自动在服务根目录的 database
目录下创建 database.sqlite
文件),同时需要设定管理员邮箱和登录密码。

配置完成后根据引导进入图床首页。

B. 设置存储策略
登录管理员账户,点击侧边栏的 “存储策略” 进入图片文件存储的相关配置,创建一个新的存储策略。

默认存储策略为本地存储,为了不占用服务器空间,我们这里使用 AList 提供的 WebDAV 服务创建一个新的存储策略,配置项如表所示,其中访问域名即为图片直链对应的域名和路径。
注意:记得选中角色组,否则存储策略不会生效。

老版本:

新版本:
重点来了!!!
其中新版本宝塔安装的alist登录需要验证,docker安装的端口可能不同!所以!
在蓝空图床中,nginx配置如下:
server { # 转发 AList 图片访问请求 location /img { # 辅助完成 AList DAV 身份验证,${base64} 需要修改为 WebADV "账户:密码" 的 base64 编码 proxy_set_header Authorization "Basic ${base64}"; proxy_pass http://localhost:5244/dav/image; proxy_read_timeout 600s; } }
Nginx 配置说明
上传至图床的图片应该是可公开访问的,但 AList 提供的 WebDAV 服务需要身份验证,为此我们在以上 Nginx 配置中增加了 转发 AList 图片访问请求 配置项,其目的是通过添加 Basic Auth 请求头使 Nginx 替代客户端完成 AList WebDAV 身份验证。
为了防止图片被恶意删除,建议创建一个只具备读取权限的 AList 用户。也就是说,需要两个账号:上传用admin,访问用新建的只读权限用户。
经过以上配置,客户端通过访问 https://image.domain.name.cn/img/${img\_path} 即可直接获取图片,无需进行身份验证。
Basic Auth 请求头内容设置
若 AList WebDAV 的用户名和密码为 username 和 password,则 ${base64} 处填入 “username:password” 的 base64 编码,即:
proxy_set_header Authorization “Basic dXNlcm5hbWU6cGFzc3dvcmQ=”;
编码网址:https://www.ibase64.com/zh-cn/
20230512 更新后的配置方法:
Nginx配置更新,图片直链直接使用 Alist 文件直链(即使用 /d/ 路径而非 /dav/),无需额外创建 WebDAV 用户辅助文件访问验证。
优点:/d/ 路径只对指定文件路径有效,无法查看目录内容,能够隐藏当前图片的上传情况。
server { # 转发 AList 图片访问请求 location /img { proxy_pass http://localhost:5244/d/image; proxy_read_timeout 600s; } }
C. 设置 WebDAV 为默认存储策略
WebDAV 存储策略添加后可以将默认本地存储策略删除,防止用户将图片上传至本地服务器。
付费资源
售价300积分立即购买
以上内容仅代表作者观点,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。