以下内容来自Gemini Pro 3.1
将 Chevereto-Free 1.4.2 升级到 Chevereto V4 是一个跨大版本的升级(Free 1.4.2 实际上属于 V3 架构的最终分支)。目前 Chevereto V4 的核心已经全面开源,并且在较新的版本中免费开放了 S3 存储和多用户功能。
为了保证数据安全,在执行任何操作之前,请务必完整备份你的网站文件和数据库!
以下是平滑升级到 V4 的标准步骤:
1. 准备运行环境
- 升级 PHP:Chevereto V4 要求最低 PHP 8.0。请进入你的宝塔面板或服务器环境,将站点的 PHP 版本切换为 PHP 8.0、8.1 或更高版本。
- 清理旧缓存:建议先在旧版后台清空系统缓存。
2. 替换系统文件
- 进入你现有的网站根目录。
- 删除旧依赖:手动删除
app/vendor/文件夹(这一步非常重要,V3 的依赖如果不删除会导致 V4 报错)。 - 覆盖新文件:前往 Chevereto GitHub 官方发布页,下载最新的 V4 源码包。解压后,将里面的所有文件直接上传到你的网站根目录,完全覆盖旧文件(不会影响你的
/images等存储目录)。
3. 升级配置文件(核心步骤)
Chevereto V4 采用了全新的环境变量配置方式。你需要手动迁移旧的数据库配置:
- 将旧配置文件
app/settings.php重命名为app/env.php。 - 打开
app/env.php,将其中的旧格式修改为新的数组返回格式。
旧版格式 (settings.php):
PHP<?php
$settings['db_host'] = 'localhost';
$settings['db_name'] = 'chevereto';
$settings['db_user'] = 'user';
$settings['db_pass'] = 'pass';
$settings['db_table_prefix'] = 'chv_';
修改为新版格式 (env.php):
PHP<?php
return [
'CHEVERETO_DB_HOST' => 'localhost',
'CHEVERETO_DB_NAME' => 'chevereto',
'CHEVERETO_DB_USER' => 'user',
'CHEVERETO_DB_PASS' => 'pass',
'CHEVERETO_DB_TABLE_PREFIX' => 'chv_',
];
4. 迁移数据库
代码和配置就位后,必须更新数据库的表结构才能正常使用:
- 网页方式升级:用管理员账号登录,在浏览器访问
https://你的域名/update,按照屏幕上的指引完成数据库迁移。 - 命令行方式(推荐大数据量使用):通过 SSH 登录服务器,进入网站根目录,执行以下命令:
php app/bin/cli -C database-migrate
`## 5. 更新定时任务 (CRON)
如果你曾经在服务器设置过 Chevereto 的自动任务(Cron job),由于 V4 的命令行入口发生了变化,你需要修改定时任务:
- 旧版命令:
... php cli.php -C cron - 新版命令:
... php app/bin/cli -C cron
提示: 如果你当前是通过 Docker 安装的 Chevereto-Free,则不需要以上的手动步骤,只需修改你的
docker-compose.yml引入最新的chevereto/chevereto:latest镜像,重启容器即可自动执行迁移。`