Lsky兰空图床使用Alist存储图片
本文主要讲解兰空图床如何使用alist的webdav方式进行图片的存储
图床部署及alist部署可以参考下面的文章:
Alist设置
代理设置
- 假设alist地址为 http://alist.domain.com:5245
- ⛔️必须设置一个alist的图片访问代理,否则无法正常使用
- 被代理的路径为图片文件保存的路径,例如图片
a.png
保存在alist里面名为'lsky'的存储里面
1Panel方式设置代理
- 登陆1Panel后台
- 打开
网站
,新建一个反向代理的网站,如果你的alist服务和代理服务部署在同一个服务器,可以直接使用http://127.0.0.1
的方式替换alist.domain.com
域名进行代理
- 保存后打开网站配置
- 打开
反向代理
,点击编辑
- 修改代理请求内容,点击保存即可
Nginx方式设置代理
在nginx.conf中增加下面的配置即可,注意修改里面的参数
- server_name: 访问域名
- /alist: 请求路径,可以修改成你自己的
- proxy_pass: 反向代理地址,填写alist的域名地址和路径
Source code 37 lines<span class="hljs-section">server</span> { <span class="hljs-attribute">listen</span> <span class="hljs-number">80</span> ; <span class="hljs-attribute">server_name</span> lsky.domain.com; <span class="hljs-attribute">index</span> index.php index.html index.htm default.php default.htm default.html; <span class="hljs-attribute">proxy_set_header</span> Host <span class="hljs-variable">$host</span>; <span class="hljs-attribute">proxy_set_header</span> X-Forwarded-For <span class="hljs-variable">$proxy_add_x_forwarded_for</span>; <span class="hljs-attribute">proxy_set_header</span> X-Forwarded-Host <span class="hljs-variable">$server_name</span>; <span class="hljs-attribute">proxy_set_header</span> X-Real-IP <span class="hljs-variable">$remote_addr</span>; <span class="hljs-attribute">proxy_http_version</span> <span class="hljs-number">1</span>.<span class="hljs-number">1</span>; <span class="hljs-attribute">proxy_set_header</span> Upgrade <span class="hljs-variable">$http_upgrade</span>; <span class="hljs-attribute">proxy_set_header</span> Connection <span class="hljs-variable">$http_connection</span>; <span class="hljs-section">location</span><span class="hljs-regexp"> ^~</span> /.well-known/acme-challenge { <span class="hljs-attribute">allow</span> all; <span class="hljs-attribute">root</span> /usr/share/nginx/html; } <span class="hljs-section">location</span><span class="hljs-regexp"> ^~</span> /alist { <span class="hljs-attribute">proxy_pass</span> http://alist.domain.com/d/bittorrent; <span class="hljs-attribute">proxy_set_header</span> Host <span class="hljs-variable">$host</span>; <span class="hljs-attribute">proxy_set_header</span> X-Real-IP <span class="hljs-variable">$remote_addr</span>; <span class="hljs-attribute">proxy_set_header</span> X-Forwarded-For <span class="hljs-variable">$proxy_add_x_forwarded_for</span>; <span class="hljs-attribute">proxy_set_header</span> REMOTE-HOST <span class="hljs-variable">$remote_addr</span>; <span class="hljs-attribute">proxy_set_header</span> Upgrade <span class="hljs-variable">$http_upgrade</span>; <span class="hljs-attribute">proxy_set_header</span> Connection <span class="hljs-variable">$http_connection</span>; <span class="hljs-attribute">proxy_set_header</span> X-Forwarded-Proto <span class="hljs-variable">$scheme</span>; <span class="hljs-attribute">proxy_http_version</span> <span class="hljs-number">1</span>.<span class="hljs-number">1</span>; <span class="hljs-attribute">add_header</span> X-Cache <span class="hljs-variable">$upstream_cache_status</span>; <span class="hljs-attribute">add_header</span> Cache-Control <span class="hljs-literal">no</span>-cache; <span class="hljs-attribute">proxy_ssl_server_name</span> <span class="hljs-literal">off</span>; <span class="hljs-attribute">add_header</span> Strict-Transport-Security <span class="hljs-string">"max-age=31536000"</span>; } <span class="hljs-attribute">if</span> (<span class="hljs-variable">$scheme</span> = http) { <span class="hljs-attribute">return</span> <span class="hljs-number">301</span> https://<span class="hljs-variable">$host</span><span class="hljs-variable">$request_uri</span>; } <span class="hljs-attribute">error_page</span> <span class="hljs-number">497</span> https://<span class="hljs-variable">$host</span><span class="hljs-variable">$request_uri</span>; <span class="hljs-attribute">proxy_set_header</span> X-Forwarded-Proto https; <span class="hljs-attribute">add_header</span> Strict-Transport-Security <span class="hljs-string">"max-age=31536000"</span>; }
图床设置
- 管理员账号登陆图床后台
- 点击
存储策略
,新建存储策略 - 选择
WebDav
方式存储,并填写里面的设置 - 点击保存
- 上传图片测试
- 名称: 自定义名称
- 存储策略: 选择
WebDav
- ⛔️访问域名: 填写前面配置的代理地址,虽然我们访问地址和alist地址真实是一样的,但是这里并不能直接填写alist的地址,必须使用反向代理换成别的域名,应该是图床bug导致的,填写一样的话会导致图片无法上传
http://lsky.domain.com/alist
- URL Queries: 额外参数,可以不用填
- 链接地址: 填写alist服务的请求地址
http://alist.domain.com:5245
- 认证方式: 必须选择
Basic
,否则会失败 - 路径前缀: 由两个部分组成,第一部分是固定的前缀地址
/dav
,第二部分是你的存储名地址/bittorrent
- 用户名: 填写你alist新建的用户的用户名
- 密码: 填写你alist新建的用户的密码
参与讨论