官网:https://chevereto.com/

官方文档:https://ch.cndrew.cn/

0x01 Cheverto介绍

  • Cheverto是一款自建图床程序,可以使用Cheverto在自己的服务器上搭建自己的图床
  • 分为免费版和收费版,但是免费版本已经足够我们使用了,付费版多了硬盘扩展(图片极多的时候有用)和社交分享的功能,而且可以通过宝塔的硬盘挂载实现扩展功能。
  • 详情参考官网介绍

0x02 安装

根目录下进行操作

1. 搭建Web环境

使用宝塔进行一键部署【因为环境以前就有,因此无法做过多赘述】,有域名的将网站的域名解析也弄好(ps:后续操作建议使用宝塔,便捷)

2. 上传Chevereto程序

根据下载链接下载程序,上传至服务器网站的根目录

以下操作利用宝塔面板和FinalShell工具完成,因此很多都是界面化操作未使用命令行,例如服务器下载程序是使用wegt的命令,我就直接在Windwos上下载下来了然后用finalshell上传的

image-20210701203306274

然后解压

1
tar zfvx Chevereto-Free-1.3.0.tar.gz

之后将解压后Chevereto-Free-1.3.0文件夹的内容全部剪切到根目录下

修改content、images、app\install\temp这几个文件夹的权限为777,主要是写权限

如果后续过程中提示哪个文件夹的writing有问题,那就需要按照提示修改对应的权限即可

image-20210701204104404

然后在宝塔面板中为网站添加伪静态规则

有些添加至伪静态下面的配置文件中也可以,我添加至配置文件中打开网址会提示Niginx 404

1
2
3
location / {
try_files $uri $uri/ /index.php?$query_string;
}

image-20210701203705700

最后在解压后的app文件夹中创建settings.php文件

往文件夹内写入以下内容,(数据库需要提前下载好)

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$settings = array (
'db_host' => 'localhost',
'db_name' => '数据库名字',
'db_user' => '用户名',
'db_pass' => '用户密码',
'db_table_prefix' => 'chv_',
'db_driver' => 'mysql',
'db_pdo_attrs' =>
array (
),
'debug_level' => 1,
);

打开网站时若出现Chevereto can’t create the app/settings.php file. You must manually create this file这个报错,那就是因为没有settings这个文件。

创建好这个文件后可以不写这些内容,那么在后续打开网站时会要你手动输入

3. 网址测试

上述步骤做完后便可以打开网址了,打开后自动跳转至设置界面,设置注册后图床便搭建好了

image-20210701204849547

后台界面

image-20210701213545966

0x03 API使用

我搭建图床的目的是为另一个博客,因此便需要使用到图床的API接口

首先打开官方文档,通过官方文档可以找到大致操作和介绍

调用API需要使用到API密匙(仪表盘–>设置–>API)

image-20210701205438424

API请求的参数官方文档中有详细介绍,如下

image-20210701205704833

我们上传调用使用到的参数就是:upload,key,source,format格式参数默认就是json

下面是一个请求示例,这里直接使用了get请求

1
https://网址/api/1/upload/?key=API密匙&source=https://mikasae.github.io/Mikasa/RemMikasa/diary/6.30.2.png

返回的一部分参数

image-20210701210025126

0x04 注意和报错

1. mysql

此图床是需要使用到mysql的,在settings.php中设置的也就是mysql创建的数据库相关信息,因此配置时要提前创建好数据库

2. php版本

有时候如果报一些php的相关错误,可能是php版本的问题,我在安装时使用php8.0时报了很多错,切换成php7.4便没有问题了

3. 缺少session.save_path

在打开网站时报错:(一般在报错的最后一句)

g: sessions are not working on this server due to missing write permission on session save path (php.ini session.save_path).

解决办法:在宝塔文件中搜索php.ini文件,找到打开后Ctrl+F搜索session.save_path,如果找到就将前面的注释取消,未找到就添加session.save_path = “tmp”

详情请参考通过宝塔面板搭建图床|Chevereto图床程序搭建教程

4. 目录问题

整套安装建议在根目录下进行操作(就是前面说的解压后将所有文件放在根目录),可以避免一些不必要的问题,如果实在不想根目录下乱的话可以在安装完成后再将所有文件整理到一个文件夹中,使用Apache比Nginx更容易

一开始我是未使用根目录的,上面出现的问题我挨个碰了个遍,解决后还是有莫名其妙的问题,就直接全部换成根目录重新操作了一遍,中间未遇到任何问题(没想明白)

若有问题或者因为表述不清未看明白的欢迎直接咨询博主或留言

0x05 ImgUrl图床

imgUrl也是一款简单纯粹的图床程序,加上Cheverto,这两个图床程序是比较好用的,我因为使用的是Cheverto搭建的图床,因此imgUrl只在本地进行了搭建测试,最后有界面展示。

imgUrl搭建还是比较简单的,只要提前将需要的插件(fileinfo & imagemagick)和环境配好,直接下载程序解压就可以打开网站使用了,会自动进行引导安装的界面.

插件的话有宝塔,点两下就可以了,然后如果用的是Apache,伪静态都不需要设置,直接解压,over.

image-20210701213353267

image-20210701213421716

image-20210701213454582