搭建私人图床-typora图片自动上传(宝塔面板+lskyPro+Picgo)
在数字化时代,图片已成为我们日常沟通和表达的主要方式。无论是社交媒体、博客还是论坛,图片都是不可或缺的元素。然而,随着图片数量的不断增加,如何高效地存储和分享图片成为了一个难题。这时候,图床应运而生,成为解决这一问题的利器。
图床
什么是图床
图床,顾名思义,就是存储图片的“床”。它是一种提供在线图片存储服务的工具,允许用户上传、存储和分享图片。通过图床,用户可以将图片上传到云端,然后获得一个链接,可以在任何地方分享这个链接,而不需要担心图片的存储和带宽问题。
图床搭建的多种方案
GitHub + jsDelivr CDN + PicGo
- 原理:利用 GitHub 的仓库(Repository)存储图件,通过 jsDelivr(全球公共 CDN)加速访问,使PicGo 作为客户端自动上传。
- 优点:完全免费、无需维护
- 缺点: jsDelivr DNS易被污染;Github服务器位于国外,直接访问速度较慢
阿里云 OSS + PicGo
- 原理:使用对象存储服务(OSS),直接将图片上传至服务商的服务器。
- 优点:国内访问速度快,稳定性极高。
缺点:如果流量大,费用会迅速上涨;OSS自定义域名需要备案。
Chevereto + PicGo
- 原理: Chevereto 是一套成熟的 PHP 图床程序(现在只有付费版)。你需要自己购买一台 服务器安装 部署 Chevereto 程序,然后通过 PicGo 对接其 API。
- 优点:独立的后台管理页面,功能强大。
- 缺点:维护成本高、对服务器性能有一定要求。
Cloudflare R2 + WebP Cloud + PicGo
- 原理:Cloudflare R2 是 S3 兼容的对象存储,最大卖点是免费的出口流量(不像 AWS S3 下载要钱)。WebP Cloud 用于图片格式自动转换(WebP/AVIF)和加速。
- 优点:流量免费、私有性好。
- 缺点:配置复杂、国内访问不稳定。
轻量应用服务器 + lsky Pro + PicGo
- 原理:使用轻量应用服务器,部署 lsky Pro(国产的开源、轻量级图床程序)。
- 优点:轻量级、部署简单、存储灵活。
- 缺点:依赖国内服务器。
本文将详细介绍轻量应用服务器 + lsky Pro (兰空图床) + PicGo的方案。
轻量应用服务器配置
本文以腾讯云轻量应用服务器为例
购买合适的轻量应用服务器
镜像选择使用宝塔Linux面板

初始化宝塔面板
在导航栏选择应用管理,点击立即登录登录宝塔面板


选择初始化组件LNMP,因为我们选择的为轻量应用服务器,所以使用Nginx(使用资源更少,效率更高)。数据库这里以MySQL为例,也可选择其它的。(这块PHP版本应设置为8.1或8.0,8.2会报错,后续文章会介绍)

更改宝塔面板端口
为增强安全性,需要更改宝塔面板端口(需等待初始化组件安装完成后)
在控制台放行端口10000(建议端口范围为8888 - 65535)

在宝塔面板设置中更改面板端口为刚放行的端口,点击确定后面板会自动重启

搭建Lsky Pro
Lsky Pro开源版已经停止更新,但其功能已经足够使用
下载Lsky Pro
这里我们下载最后发布的开源的2.1版本
下载链接,这里直接从Github下载,速度看网速
创建网站
在宝塔面板添加一个站点,域名可自定义,这里以服务器IP为例

删除网站根目录下的404.html和index.html

上传安装包
上传下载的Lsky Pro的安装包

解压
右键上传的压缩包进行解压

删除压缩包(可选,删不删看个人选择)

配置网站
将网站的运行目录改为/public并保存

设置伪静态
1 | location / { |

访问网站
发现报错500

检查文件发现PHP过高或过低会导致与Carbon的兼容性问题,此处将PHP版本更换为8.1或8.0(需大于8.0.2,小于8.2)即可。
将站点的PHP版本替换为8.1

再次访问网站,已经可以成功进入安装引导。
运行环境检测未通过,缺少Fileinfo等扩展和函数。


根据引导安装所需要的扩展和函数(图示为部分示例)


数据库配置
在宝塔面板中创建一个数据库

将数据库的配置信息填入并设置管理员账号与密码

后台设置
安装成功后点击进入首页
在首页右上角点击登录,需要进行一些系统的设置

系统设置
可自行根据需要进行设置

邮件配置此处不做演示,需要配置可前往邮箱服务网站设置中获取主机地址

角色组配置
根据个人需要进行配置
40GB = 41943040KB

上传图片
网页端测试
上传一张图片进行测试

将图片的访问链接URL复制放到浏览器中可以正常访问

网页端测试成功!
PicGo配置
下载PicGo
PicGo 官方文档:https://picgo.github.io/PicGo-Doc/zh/guide/
PicGo 2.4.3版本下载地址:https://release.picgo.app/2.4.3/PicGo-2.4.3-x64.exe
安装PicGo
点击exe程序进行安装,无脑下一步即可


配置PicGo
在右下角托盘处 打开 PicGo

输入lsky-upload即可找到,安装图示插件

获取tokens
根据接口说明文档我们需要通过POST请求来生成token,这里提供两种方法


- 使用浏览器控制台发送POST请求
1 | var xhr = new XMLHttpRequest(); |
返回的数据中,data属性的值即为token的键值对
- 使用Python的requests库发送POST请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17import requests
# 替换为 WPS 提供的回调地址
url = "https://example.com/api" #修改为自己的接口
# 请求体中的 JSON 数据
payload = {
"email": "{你的邮箱}", #修改为自己的邮箱
"password": "{你的密码}" #修改为你自己的密码
}
# 设置请求头
headers = {
"Content-Type": "application/json"
}
# 发送 POST 请求
response = requests.post(url, json=payload, headers=headers)
# 输出响应结果
print("状态码:", response.status_code)
print("响应内容:", response.json())
配置插件
将服务器域名http://xxx.xxx.xxx.xxx和刚才获取的Token2|xxxx填入并保存

可配置多个服务器信息,在页面右上角可以自由选择

上传一张图片进行测试,测试成功!
配置typora图片自动上传
在写博客的时候,使用的图片都需要单独放置到img目录再进行上传,十分麻烦。typora提供了一种图片自动上传的功能,当把图片粘入编辑器时,会自动将图片上传,并将返回的图片链接以正确的格式放在指定位置,这大大简化了我们在博客撰写时的工作。



测试成功!
完结撒花!🎉🎉🎉
参考链接:https://blog.csdn.net/qq_39927501/article/details/123336682





