跳转到内容

6.x 升级到 7.0

升级前请先通读7.0 破坏性变更清单,确认你的站点或自研插件不依赖被移除的接口。

升级路径

Elgg 7.0 不支持从任意 6.x 版本直接原地切换。建议路径:

  1. 当前站点升级到 6.3.x 末线(composer 层面的小版本升级,风险低)
  2. 处理破坏性变更(见清单)
  3. 切换到 7.0

操作步骤

1. 完整备份

Terminal window
# 数据库
mysqldump -u elgg_user -p elgg_db > elgg_db_$(date +%F).sql
# 站点文件与数据目录
tar czf elgg-site_$(date +%F).tgz /var/www/elgg-site
tar czf elgg-data_$(date +%F).tgz /var/www/elgg-data

2. 更新 Composer 依赖

Terminal window
cd /var/www/elgg-site
composer require "elgg/elgg:^7.0" --with-all-dependencies
composer update

3. 执行升级脚本

浏览器访问 https://你的域名/upgrade.php,按提示完成数据库结构升级。不要跳过升级脚本直接使用站点。

4. 清缓存并回归验证

升级完成后:

  • 后台”清除缓存”
  • 逐个开启核心插件验证基本功能:注册/登录、发布内容、群组操作
  • 重点回归你自定义或第三方插件的页面与 action

回滚

升级脚本执行后数据库结构已变更,回滚需恢复备份的数据库与文件:

Terminal window
mysql -u elgg_user -p elgg_db < elgg_db_2025-01-01.sql
tar xzf elgg-site_2025-01-01.tgz -C /
tar xzf elgg-data_2025-01-01.tgz -C /

如果变更较大、内部没有 PHP 开发资源,可以考虑通过 elgg.biz 的升级服务处理。