
EasyImage和Lsky Pro两款图床的搭建与使用
1 前言
一个好的图床,是网站或文章的图片能稳定显示的关键,可是很多图床要么不稳定,要么收费,导致网站或文章图片经常挂掉,为了能让图片稳定显示,可以选择自建一个图床网站。
注意
本文将安装宝塔面板,使用宝塔面板可简化操作难度,另外涉及 Docker、ApiPost 和 PicGo 等程序的使用安装根据个人选择而定。
2 比较
2.1 EasyImage
EasyImage 是一款免费开源且功能强大的轻量图床程序,还不强制使用数据库运行。
演示站:https://png.cm/
2.1.1 特点
- 支持 API
- 支持仅登录后上传
- 支持设置图片质量
- 支持压缩图片大小
- 支持文字/图片水印
- 支持设置图片指定宽/高
- 支持上传图片转换为指定格式
- 支持限制最低宽度/高度上传
- 支持上传其他文件格式
- 在线管理图片
- 支持网站统计
- 支持设置广告
- 支持图片鉴黄
- 支持自定义代码
- 支持上传 IP 黑白名单
- 支持上传日志 IP 定位
- 支持限制日上传次数
- 支持创建仅上传用户
- 对于安装环境要求极低
- 对于服务器性能要求极低
- 理论上支持所有常见格式
2.1.2 界面展示
2.2 Lsky Pro
Lsky Pro 是一个用于在线上传、管理图片的图床程序,可以将它作为云上相册或者写作图床等。
演示站(付费版):https://wmimg.com/
2.2.1 特点
- 支持
本地
等多种第三方云储存AWS S3
、阿里云 OSS
、腾讯云 COS
、七牛云
、又拍云
、SFTP
、FTP
、WebDav
、Minio
- 多种数据库驱动支持,
MySQL 5.7+
、PostgreSQL 9.6+
、SQLite 3.8.8+
、SQL Server 2017+
- 支持配置使用多种缓存驱动,
Memcached
、Redis
、DynamoDB
、等其他关系型数据库,默认以文件的方式缓存 - 多图上传、拖拽上传、粘贴上传、动态设置策略上传、复制、一键复制链接
- 强大的图片管理功能,瀑布流展示,支持鼠标右键、单选多选、重命名等操作
- 自由度极高的角色组配置,可以为每个组配置多个储存策略,同时储存策略可以配置多个角色组
- 可针对角色组设置上传文件、文件夹路径命名规则、上传频率限制、图片审核等功能
- 支持图片水印、文字水印、水印平铺、设置水印位置、X/y 轴偏移量设置、旋转角度等
- 支持通过接口上传、管理图片、管理相册
- 支持在线增量更新、跨版本更新
- 图片广场
2.2.2 界面展示
3 准备
推荐使用宝塔面板,两款图床均需要 LNMP 环境以及某些 PHP 拓展,使用宝塔面板可以降低环境搭建的难度,宝塔面板安装可参考下方文章,然后在宝塔面板选择安装 LNMP 套件
如果选择 EasyImage 图床,还可以使用 Docker,可参考下方文章
4 EasyImage 部分
本部分 EasyImage 的安装将介绍两种方式,分别是宝塔软件商店和 Docker,推荐使用宝塔软件商店
4.1 安装拓展
打开宝塔后台>软件商店>已安装>选择 php(设置)>安装扩展>选择安装fileinfo
iconv
zip
mbstring
openssl
(如果没有就是已经安装了),安装完成后重启 PHP
4.2 安装图床
4.2.1 方式一:宝塔软件商城(推荐)
在宝塔面板左侧菜单栏点击软件商店,选择一键部署分类,搜索简单图床,在列表中找到对应项目点击一键部署操作
进行部署配置,域名需要在云服务商的域名控制台进行域名解析
提交完成后在宝塔面板左侧菜单栏点击网站,找到简单图床对应的网站行点击设置,点击网站目录关闭防跨站攻击
创建成功站点后访问,首先会对安装环境进行检测,无问题则下一步
第二步将进行网站基础配置,如无特殊情况则保持默认开始安装,跳转至登录页即为安装成功
4.2.2 方式二:Docker 部署
创建配置目录和存储目录
1 | # 配置目录 |
使用 docker-cli 安装 EasyImage
1 | docker run -itd \ |
通过 IP:8080 访问,如要通过域名访问需使用 Nginx 做反向代理
4.3 图床使用
4.3.1 获取 PicGo
下载最新版PicGo
4.3.2 安装插件
安装后在插件设置中搜索 web-uploader
,选择 web-uploader 1.1.1
安装
4.3.3 配置图床
依次点击图床设置>自定义 Web 图床,然后新建一个图床配置,按照如下方式填写,然后确定并设置为默认图床
1 | 图床配置名: // 自定义 |
然后在图床安全中的高级设置里开启 API 上传
4.3.4 测试上传
在 PicGo 上传一张图片,并在简单图床中查看是否有这张图片,若有则为上传成功,没有则检查以下几点
- 是否开启 API 上传
- PicGo 的配置信息是否正确,尤其是自定义 Body 中需要添加{“token”:“xxx”}
- 图床选择是否正确
5 Lsky Pro 部分
5.1 环境安装
宝塔面板的 LNMP 套件的 PHP 默认版本为 7.4,而 Lsky Pro 的要求为大于等于 8.0.2,打开宝塔后台>软件商店,搜索 PHP,推荐安装 8.1 版本
进入 php8.1 管理页,然后点击安装扩展,安装fileinfo
,imagemagick
和exif
扩展
进入 php8.1 管理页,然后点击禁用函数,找到exec、shell_exec 函数
、readlink、symlink 函数
、putenv、getenv 函数
、chmod、chown、fileperms 函数
点击删除
5.2 安装图床
5.2.1 创建站点
打开宝塔面板,选择左侧菜单栏的网站,点击添加站点,域名可设置 IP 或域名,数据库选择 MySQL,PHP 版本选择 PHP-81,其它项可自定义
5.2.2 上传程序
在Lsky Pro GitHub 发布页中找到最新版本的图床程序并复制下载链接
打开刚刚创建的网站根目录,在远程下载中选择从 URL 链接下载,在 URL 中填写在 GitHub 复制的下载链接,如果无法远程下载,就在 GitHub 里下载到本地后上传
下载好后双击文件名解压到当前目录
5.2.3 网站配置
程序上传完后回到网站>站点设置>网站目录,将网站运行目录设置为 /public
目录,修改后点击保存
然后点击伪静态,输入以下规则后保存
1 | location / { |
5.2.4 图床安装
在云服务商的域名控制台将访问域名进行域名解析,在浏览器中访问站点地址自动跳转至安装页面,在第一步运行环境检测中无问题则下一步
在前面创建站点时就创建了数据库,在宝塔面板左侧菜单栏点击数据库,找到对应数据库按提示填写
最后点击立即安装,出现程序安装完成。
即为安装成功,点击指定位置即可快速访问程序首页
5.3 图床使用
4.3.1 获取 PicGo
下载最新版PicGo
4.3.2 安装插件
安装后在插件设置中搜索 lankong,选择作者为 hellodk 的安装
4.3.3 配置图床
获取 Token:
使用 ApiPost 或者在线 POST 工具,打开 Lsky Pro 左侧菜单栏的接口项(需登录),获得接口 URL
依次点击图床设置>lankong,然后新建一个图床配置,按照如下方式填写,然后确定并设置为默认图床
1 | 图床配置名: // 自定义 |
4.3.4 测试上传
在 PicGo 上传一张图片,并在 Lsky Pro 图床中查看是否有这张图片,若有则为上传成功,没有则检查以下几点
- PicGo 的配置信息是否正确,尤其是 Auth token 中需要添加
Bearer
拼接 - 图床选择是否正确
6 写在最后
本文两款图床在应对日常使用没有太大的区别,在搭建上 EasyImage 图床更加快捷方便,在页面 UI 上 Lsky Pro 更加美观,操作也更舒服,要选择哪一款可以尝试一些演示站后决定,但无论哪一款,一定要注意隐私安全。
- 感谢您的赞赏。