图床搭建教程:兰空图床 Lsky Pro 自建与 PicGo 配置,写作配图从此不求人


写博客、做笔记、发公众号,图片是刚需。用第三方图床担心哪天关停、图片全挂;用云厂商对象存储又贵又麻烦。自己用 VPS 搭一个图床,图片存在自己手里,配合 PicGo 一键上传,配上自己的域名还能走 CDN 加速。这篇文章手把手教你用兰空图床(Lsky Pro)从零搭建,并配置 PicGo 实现"复制粘贴即上传"。

一、方案选择:为什么选兰空图床

自建图床主流方案对比:

方案 特点
兰空图床 Lsky Pro 功能全、有后台、支持多种存储策略和 API,社区活跃
PicGo + 对象存储 需要购买 COS/OSS,按量计费,长期成本不划算
Chevereto 老牌但授权收费,免费版功能受限
简单 HTTP 上传脚本 无后台无管理,不推荐

兰空图床(Lsky Pro) 是目前最推荐的免费开源方案:支持本地存储、对象存储、FTP 多种存储方式,自带用户系统、图库管理、防盗链,提供标准 API 给 PicGo 调用,一套下来完全够用。

环境要求: PHP 8.0+、MySQL 5.7+/8.0、Nginx/Apache。宝塔面板可以直接部署。

二、部署兰空图床(宝塔面板方式)

1. 创建网站和数据库

在宝塔面板:网站 -> 添加站点,绑定你的图床域名(如 img.example.com);数据库 -> 添加数据库,记下数据库名、用户名、密码。

2. 下载并安装兰空图床

cd /www/wwwroot/img.example.com
wget https://github.com/lsky-org/lsky-pro/releases/latest/download/Lsky-Pro-v2.zip
unzip Lsky-Pro-v2.zip

给目录设置权限:

chown -R www:www /www/wwwroot/img.example.com

3. 伪静态配置(重要)

在宝塔站点设置里开启伪静态,选择或填写:

location / {
    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php?s=$1 last;
    }
}

4. 浏览器安装

访问 http://img.example.com,进入安装向导:填写数据库信息、设置管理员账号密码,安装完成后登录后台。

5. 设置存储策略

后台 -> 存储策略 -> 添加策略,选"本地存储",指定存储路径和访问域名(填 https://img.example.com),设为默认。

提示:也可以选"对象存储"(阿里云 OSS、腾讯云 COS),图片传到云上,VPS 不占磁盘。

三、部署兰空图床(命令行方式)

不想用面板,手动装也很快(以 Ubuntu + Nginx + PHP 为例):

# 安装环境
apt install -y nginx php8.1-fpm php8.1-mysql php8.1-gd php8.1-zip php8.1-exif php8.1-xml php8.1-mbstring php8.1-curl unzip

# 下载程序
mkdir -p /var/www/img && cd /var/www/img
wget https://github.com/lsky-org/lsky-pro/releases/latest/download/Lsky-Pro-v2.zip
unzip Lsky-Pro-v2.zip && chown -R www-data:www-data /var/www/img

Nginx 站点配置:

server {
    listen 80;
    server_name img.example.com;
    root /var/www/img/public;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?s=$uri;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    }
}
nginx -t && systemctl reload nginx

浏览器访问域名完成安装向导即可。

四、安装 PicGo 并配置兰空图床

PicGo 是跨平台的图片上传工具(Windows/Mac/Linux),支持拖拽、剪贴板上传,是自建图床的标配搭档。

1. 安装 PicGo

去 PicGo 官网下载对应系统版本安装。推荐用 v2.x 或 v3.x。

2. 安装兰空图床插件

打开 PicGo -> 插件设置,搜索 lskypro 或 lsky,安装"lskypro"插件(社区插件,作者不同,选下载量最高的即可)。

3. 配置图床参数

插件设置里填写:

URL:http://img.example.com/api/v1/upload   # 你的图床 API 地址
TOKEN:粘贴你在兰空后台生成的令牌

获取令牌: 兰空图床后台 -> 个人设置/API 令牌 -> 生成一个新令牌,复制粘贴进 PicGo。

4. 使用

  • 截图后 Ctrl+Shift+P(自定义快捷键)直接上传;
  • 或拖拽图片到 PicGo 窗口;
  • 上传成功自动复制 Markdown 链接,粘贴到博客/笔记即可。

五、进阶配置:HTTPS + CDN 加速

1. 开启 HTTPS

给图床域名申请免费 SSL 证书(宝塔面板一键申请,或命令行 acme.sh),并设置 HTTP 跳转 HTTPS。

2. 图片走 CDN(推荐)

图片是静态资源,套一层 CDN 既能加速又能扛流量:

  • 国内访问:用腾讯云/阿里云 CDN,回源到你的图床域名;
  • 海外/免费方案:Cloudflare 免费 CDN,全站代理,图片自动加速;
  • 有条件的用对象存储策略,直接接云厂商的 CDN,速度最好。

3. 防盗链设置

后台开启防盗链,只允许你的博客/网站域名引用图片,防止别人盗链你的流量:

# Nginx 层也可以加一层
location ~* \.(jpg|jpeg|png|gif|webp)$ {
    valid_referers none blocked img.example.com yourblog.com;
    if ($invalid_referer) {
        return 403;
    }
}

六、常见问题排查

1. 安装向导打不开/白屏

检查 PHP 版本(需 8.0+)、伪静态是否配置、目录权限是否为运行用户(www/www-data)。

2. 上传提示 413 Request Entity Too Large

Nginx 默认限制上传大小,修改配置:

client_max_body_size 50m;

改完 nginx -t && systemctl reload nginx。

3. 图片上传成功但显示 404

存储策略里"访问域名"没填对,或伪静态没生效。确认访问域名填的是完整域名(带 http/https),并检查伪静态规则。

4. PicGo 上传报错 401/令牌无效

重新在兰空后台生成新令牌,粘贴时注意别带空格和多余字符。

5. 磁盘空间不够

定期清理图库里的废图;或改用对象存储策略,把图片放到 OSS/COS。

总结

自建图床三件套:兰空图床(Lsky Pro)提供后台和 API + PicGo 一键上传 + CDN/HTTPS 加速。部署只需创建站点、下载程序、跑安装向导三步;配好 PicGo 后,平时写文章就是截图 → 自动上传 → 粘贴链接,图片永远掌握在自己手里。有对象存储预算的话,直接配 OSS/COS 策略,速度和容量都不是问题。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

WordPress 从零建站完整教程:安装、配置、主题插件与上线发布,新手也能一天上线

GitHub 下载慢怎么办?国内加速方法大全:镜像站、代理与加速工具实测

评 论
更换验证码