Mortal's Blog

生命不息,折腾不止!

搭建Chevereto私有图床

文章最后修改于:2020-10-19 15:17:34

1. Chevereto图床简介

图床:也就是专门提供存储图片的地方,我们上传好图片,就可以通过外链/API等方式访问了。图床分为公共图床和自建图床。

  • 公共图床,会用各种技术帮我们做图片相关的优化和服务,比如CDN 加速、图片处理、图片鉴黄、文本识别等等,我们不需要担心硬盘空间不足等问题。

  • 而下文介绍的Chevereto属于私有图床,将其建立在国内服务器或者套上合适的CDN,都可以为我们访问照片加速,大大加快打开网页的速度。除了储存、处理、分发照片外,Chevereto还可以作为个人分享和收集优秀图片的平台。

2. 在VPS上搭建Chevereto

2.1 准备工作

1)买vps,并使用Xshell通过ssh远程连接 Bandwagon host【如果使用国内服务器需要备案】

2)买域名,并将域名绑定至vps的IP上 NameSilo

2.2 安装宝塔面板

以下以我所使用过的Debian9和Centos7为例,其余发行版的安装方式参见:宝塔Linux面板安装教程

Debian 9:

Centos 7:

最后得到了宝塔面板的登陆信息,将其保存下来

2.3 安装网站环境

1)安装LNMP环境

使用刚刚获得到的信息,浏览器访问你的后台,登陆宝塔面板,首次登陆宝塔面板后台,会弹出一键安装环境

  • 选择LNMP环境,节省资源
  • 调整Mysql和PHP版本(Mysql5.5,PHP 7.1)
  • 安装方式选择为编译安装

《搭建Chevereto私有图床》

2)新建站点

网站——添加网站——提交(这里面的密码记不记无所谓,可以随时查看)

《搭建Chevereto私有图床》

3)域名解析

  • 见“NameSilo域名解析.md”文档
  • 网站绑定域名:宝塔Linux面板——网站——设置——域名管理——添加 www.域名

2.4 安装Chevereto

懒人部署方式如下:[“Docker部署”与“传统压缩包安装”见“参考文献[1]”]

1)下载Github官方提供的Chevereto Installer:传送门

2)登录宝塔面板,将 installer.php上传到网站根目录 /www/wwwroot/域名

3)浏览器访问: http://域名//installer.php
《搭建Chevereto私有图床》
确认以上详细信息与您要安装Chevereto的位置相匹配,并且没有安装其他软件。

4)按要求“将以下服务器规则添加到您的nginx.conf服务器块中。重新启动服务器以应用更改。完成后,回到这里继续进行。”【不配置会出现“执行HTTP请求时出错”报错】

添加步骤:宝塔Linux面板——网站——设置——配置文件——以上服务器规则放入server{}代码块中

5)跳过-免费使用Chevereto(个人用户免费版就够用)——跳过cPanel——输入数据库的相关配置

  • “主机”填:localhost,“端口”填3306,“数据库名称、用户、用户密码”去宝塔面板查看
    《搭建Chevereto私有图床》

6)输入“邮箱、用户名、密码”(记下来),设置管理员

《搭建Chevereto私有图床》

2.5 给Chevereto配置https

Chrome一直在推动https网站,所有的http协议网站被标记为不安全,如果再不对网站进行https改造的话,那么可能会对信任度造成一定的影响,所以说对一个面向用户的网站来说,开启https是非常有必要的。

操作步骤:
1)宝塔Linux面板——网站——设置——SSL——选择 Let’s Encrypt,输入邮箱,并在两个域名前边打钩,确认没问题后点击申请
《搭建Chevereto私有图床》
2)稍等一下就会看到开启成功,勾选强制https(这样即使有用户访问http网页也会自动跳转到https格式)
《搭建Chevereto私有图床》

2.6 Chevereto成品

URL: https://域名/ 样式与配置自行设置,下图为我搭建好的成品

《搭建Chevereto私有图床》

3. 利用ShareX将本地图片上传Chevereto

3.1 ShareX简介

主要功能:屏幕截图,文件共享和生产力工具:ShareX官网

我的用途:利用其“截图-打模糊-上传Chevereto-复制图像url”等一系列功能写Markdown文档(有一部分会用于直接发表Wordpress博客),以解决默认的imgur图床在墙内无法显示的问题。

《搭建Chevereto私有图床》

3.2 ShareX上传Chevereto的配置

[1] Chevereto——仪表盘——设置——API——复制该API

《搭建Chevereto私有图床》

[2] ShareX——上传至——上传目标设置——chevereto——填写上传URL和API密钥

《搭建Chevereto私有图床》

说明:上传URL要严格按照示例的格式来填,即后面的 /api/1/upload要填上

[3] ShareX——上传至——图片上传,选择chevereto

至此,以访客形式上传至chevereto的配置已完成,如果要以用户的形式上传,继续下面的配置:

说明:API V1没有办法上传与给定用户相关联的图像,但是你可以覆盖默认的API,以实现以用户的形式上传

[4] 宝塔Linux面板——文件——将 app/routes/route.api.php文件复制到 app/routes/overrides文件夹,然后在此编辑该文件,保存即可。

  • CHV\Image::uploadToWebsite($source);改为 CHV\Image::uploadToWebsite($source, 'Logistic');
  • 说明:该代码段在105行附近,Logistic处填写自己的用户名

《搭建Chevereto私有图床》

[5] 重要说明:上传Chevereto图床的图片一定要在本地留有备份,以防不测。(ShareX设置好本地的存储路径即可)

3.3 ShareX其他功能

[1] 上传文件到网盘(我用的Nextcloud)

1)ShareX——上传至——上传目标设置——填写Nextcloud的登录信息
《搭建Chevereto私有图床》
2)ShareX——上传至——图片上传,选择Chevereto

[2] 截图后可以直接编辑图片(包括标记、裁剪、模糊、马赛克等功能)再上传

[3] 还有很多其他的实用功能,自行寻找。相关设置配置好了可以将其导出备份(应用程序设置——导入/导出)

4. 参考资料

[1] Chevereto-搭建私人图片外链库 from Newlearnerの小站

[2] Chevereto项目地址 from Github

[3] Chevereto-中文文档-上传到用户的解决方案 from Chevereto API

[4] 利用ShareX快速截图并自动上传分享到chevereto from 主机笔记

点赞

发表评论

电子邮件地址不会被公开。

EA PLAYER &

历史记录 [ 注意:部分数据仅限于当前浏览器 ]清空

      00:00/00:00