曾经用过 jsdliver+Github 做图床,虽然很好用,但后来发现这种操作发现违反 ToS,不值得提倡。因此搭建一个自己的图床就很重要(吃灰小鸡再利用),这里图床程序选择了免费版的 Chevereto,如果需要挂载其他网盘,可以考虑购买付费版。

接下来介绍两种方法,需要提前准备 LNMP 环境,并为 Chevereto 建好用户和数据库,此处略过。

安装 Chevereto

以下提到的 Chevereto 都指的是 Chevereto v3 版本

目前最新免费版(v1.5.0)环境要求:

  • PHP 7.4
  • MySQL 5.7 / 8 - MariaDB 10

需要注意的是 Chevereto 免费版将于 2021-12-31 停止维护,并且不再发布新的版本,而且最后的 v1.5.0 版本去除了对多语言的支持,不能使用中文,更早的版本(v1.4.2 及更早)则可正常选择多语言,具体的版本和特性变化大家可以在 release 页面查看,可以根据自己的需求选择。

方法一:installer.php 安装

直接上官网 DOWNLOAD INSTALLER,将该文件放在你的网站目录下,打开 http://your-domin/installer.php 根据提示安装,缺啥装啥,没权限的该加就加。

不过我安装的时候居然提示不支持php7.3
。。。

故使用另一种方法🙃

方法二:源码安装

1. 下载源码:

git clone https://github.com/Chevereto/Chevereto-Free

2. 同样给 PHP 用户添加读写权限,并改变为 Chevereto 所在路径的所有者:

chmod -R 755 /wwwroot/chevereto
chown -R www:www /wwwroot/chevereto

3. 修改 PHP 设置

这里需要修改 php.ini 文件已上传更大图片文件(默认 2M),例如我安装的 PHP7.4 版本,文件默认在:/etc/php/7.4/fpm/php.ini

一般来说,需要修改下面三个配置:

  • 最大的文件上传,单个文件上传的最大大小:upload_max_filesize = 5M,比如我这里设置的 5M
  • 最大的执行大小,POST 队列(本次所有文件)最大大小:post_max_size = 50M,结合上面意味着本次最多同时上传 10 个文件
  • 最大的执行时间,默认的最大执行时间为 30 秒,也就是说如果上传超过 30 秒,该队列就会停止:max_execution_time = 300,表示最长执行 5 分钟

4. 修改 Nginx 配置

# Context limits
client_max_body_size 20M;

# Disable access to sensitive files
location ~* /(app|content|lib)/.*\.(po|php|lock|sql)$ {
  deny all;
}

# Image not found replacement
location ~ \.(jpe?g|png|gif|webp)$ {
    log_not_found off;
    error_page 404 /content/images/system/default/404.gif;
}

# CORS header (avoids font rendering issues)
location ~* /.*\.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$ {
  add_header Access-Control-Allow-Origin "*";
}

# Pretty URLs
location / {
  index index.php;
  try_files $uri $uri/ /index.php$is_args$query_string;
}

# END Chevereto NGINX rules

之后打开网站地址,根据提示输入数据库信息即可完成安装。

chevereto-demo

更新 Chevereto

更新 Chevereto 非常简单,你可以直接在控制面板升级,不过需要的 php 组件有点多,我一般选择覆盖升级:

1. 下载最新版本的压缩包,例如这里我们更新到 v1.5.0 版本:

wget https://github.com/rodber/chevereto-free/releases/download/1.5.0/1.5.0.zip

2. 解压到你的网站目录

unzip 1.5.0.zip -d /wwwroot/chevereto

最后直接登录你的 Chevereto 管理后台后提示你升级数据库结构以完成升级,直接点击升级即可。

chevereto-update

注意:升级前请务必备份当前版本文件目录以及数据!!!

整体使用下来还是很不错的,功能挺多的,也可以个性化设置,如果要求更高还可以选择升级专业版,用来图片备份也不错(继续吃灰叭)😑