使用Chevereto(Free)搭建自己的图床程序

Chevereto 是一款强大的自建图床程序。在之前的旧机子上也部署使用过,但由于图片数据过多(懒得打包整理)就没有备份和迁移,那新机子使用也有一段时间了,虽然性能依旧emmmm。然后最近水文章想要配些插图,发现不是特别好管理,因此在这之前的文章应该都是纯文字。趁着周末,就再来部署一遍这个图床程序吧。这里顺便简单记录下遇到的坑……
First Chevereto tuya

简单说明

环境:LNMP

版本:Chevereto-Free-1.3.0(注意你的PHP版本!)

PS:下面的路径可能会有所出入,这就需要替换成自己的路径,就不要照搬了哈。

正文

建立站点

  • 首先lnmp vhost add建立站点,创建数据库时记得选y ,后续安装需要用到。
  • 建立好后进入站点根目录 cd /home/wwwroot/站点根目录名称

下载源码

首先选择一个 Chevereto-Free版本。本文记录的是1.3.0版本,其它版本请自行替换命令里的版本号。

wget https://github.com/Chevereto/Chevereto-Free/archive/refs/tags/1.3.0.tar.gz

解压文件

tar -zxvf 1.3.0.tar.gz

移动文件

将文件移动到站点根目录下

mv Chevereto-Free-1.3.0/* ./

赋予权限

给予站点访问权限(重要!)

chown www:www -R /home/wwwroot/站点根目录名

添加伪静态

修改对应的站点配置文件,在server 中添加下面的伪静态:

#Chevereto: Disable access to sensitive files
location ~* /(app|content|lib)/.*\.(po|php|lock|sql)$ {
    deny all;
}
#Chevereto: CORS headers
location ~* /.*\.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js) {
    add_header Access-Control-Allow-Origin "*";
}
#Chevereto: Upload path for image content only and set 404 replacement
location ^~ /images/ {
    location ~* (jpe?g|png|gif) {
        log_not_found off;
        error_page 404 /content/images/system/default/404.gif;
}
    return 403;
}
#主要用到的是这个
#Chevereto: Pretty URLs
location / {
    try_files $uri $uri/ /index.php?$query_string;
}

重载配置文件

最后别忘了重载下nginx配置nginx -s reload , 接着访问你的站点,按提示填写创建站点时的数据库信息、户名信息,然后安装即可。

遇到的坑

  1. Chevereto-Free-1.3.0,也就是V3版本,它并不支持PHP8。下午装了好久,500 error到怀疑人生。因此如果你使用的是V3版本,请选择PHP8以下的版本。
  2. 如果提示Chevereto can’t create the app/settings.php file. You must manually create this file ,请查看app目录下的settings.php的访问权限是否正确,如果没有该文件,请手动创建它touch settings.php ,并赋予权限chmod -R 755 settings.php 。
  3. 海外vps:需要设置中文的话,右上角头像——settings——下拉到底,将时区设置为Asia,ShangHai——下方保存,刷新即可。

最后

附上子目录下(二级目录)的伪静态配置:

折叠标题

#Chevereto: Disable access to sensitive files
location ~* /sub/(app|content|lib)/.*\.(po|php|lock|sql)$ {
    deny all;
}
#Chevereto: CORS headers
location ~* /sub/.*\.(ttf|ttc|otf|eot|woff|woff2|font.css|css|js) {
    add_header Access-Control-Allow-Origin "*";
}
#Chevereto: Upload path for image content only and set 404 replacement
location ^~ /sub/images/ {
    location ~* (jpe?g|png|gif) {
        log_not_found off;
        error_page 404 /sub/content/images/system/default/404.gif;
    }
    return 403;
}
#将sub替换成你自己的二级文件夹名即可
#Chevereto: Pretty URLs
location /sub/ {
    index index.php;
    try_files $uri $uri/ /sub/index.php?$query_string;
}

阅读剩余
THE END