PicGo&腾讯云&Typora-搭建私有图床
下载安装PicGo
下载
[https://github.com/Molunerfinn/PicGo/releases]: “下载链接”
安装
选择想安装的目录进行安装,尽量避开中文路径
配置


设置插件安装镜像,这样国内也能访问到picgo的插件库
1 | https://registry.npmmirror.com |

根据自己选择安装插件,这里由于我用的是自己服务器通过nginx搭建的图床,所以安装了 sftp-uploader,由于背景图片选用的4k为了减少带宽压力,在上传之前将图片转成 .webp 格式,减小图片大小,所以同时安装了 webp
sftp-uploader 插件配置

安装好 sftp 插件后,需要一些配置,来访问服务器,首次点 + 号进行创建,我这里已经创建好了

大概是这个样子,其中,图床配置名,需要和配置文件中的key保持一致,配置文件需要创建一个json文件,如下:
1 | { |
这里我添加了两个,一个是上传一些公共的图片,另一个是上传文章的图片,这个可以根据自己需求添加,这里要注意的是,url 需要加上 http:// 之前直接填写的域名,导致上传图片后,复制的图片链接没有 http:// 这样每次还要手动的加,比较麻烦,由于我用的是私钥,所以 privateKey 引入了服务器的私钥,这个私钥由于我用的是腾讯云,可以创建服务器的时候,进行绑定,并下载对应的私钥

这里创建好 SSH密钥 之后,点击右边的绑定实例来绑定到自己的服务器上,而绑定了 SSH密钥 的服务器,将不能使用密码进行SSH登录
nginx 配置

服务器上安装好 nginx 之后,在 conf.d 文件夹下创建两个 .conf 的配置文件,由于 nginx 会自动扫描 conf.d 文件夹下所有配置文件并加载,所以后续的配置文件写在这里方便管理,其中 image_host.conf 这个文件按如下配置:
1 | server { |
其中 /images/ + /home/images/ 为存放图片的路径,配置好后,还需要对 nginx 用户赋予 755 权限,否则请求图片的时候会出现 502:
1 | sudo find /home/images -type d -exec chmod 755 {} \; |
hexo-host 这个文件是将 4000 端口映射到 80 端口,这样直接访问 blog.kluhten.com 的时候,直接就能进入到 hexo 服务
1 | server { |
都配置好后,测试一下 nginx 配置文件是否有编译错误:
1 | nginx -t |

重新加载 nginx ,使其生效
1 | sudo nginx -s reload |
注意:服务器相应的端口,需要进行放行
Typora配置

上传服务选择 PicGo(app),然后添加 PicGo 的路径,都配置完成后,可以验证下图片上传选项,提示成功即可







