在 Apigee 开发者服务门户(以下简称“门户”)的 Edge for Private Cloud 安装版本中,您可能会收到有关有新版 Drupal 可用的消息。新版本可以是指 Drupal 功能版本、补丁、安全更新或其他类型的 Drupal 更新。如果是安全更新,您需要尽快升级 Drupal 安装,以确保您的网站保持安全。
升级 Drupal 核心
以下过程介绍了如何将私有云安装的 Drupal 7.x.y 更新为另一个次要版本(例如,将 Drupal 7.54 更新为 7.59)。
请注意以下事项:
-
此过程仅更新您的 Drupal 安装。它不会更新随门户一起提供的 Apigee 软件。如需了解如何升级 Apigee 门户软件,请参阅升级门户。
如果在专用云升级(例如,从 4.18.05 升级到 4.19.01)期间,Apigee 更新实用程序实际降级了您的 Drupal 版本,您可能需要重新运行 Drupal 升级实用程序。如需了解详情,请参阅重新运行 Drupal 升级。
- 您必须从门户网站的根目录执行 Drush(Drupal Shell)命令。默认情况下,门户安装在以下位置:
/opt/apigee/apigee-drupal/wwwroot
(NGINX)/var/www/html
(Apache)
确定当前的 Drupal 版本
在开始 Drupal 更新之前,您可以从 Drupal 安装文件夹运行以下命令,确定当前的 Drupal 版本。默认情况下,Drupal 安装在 /opt/apigee/apigee-drupal/wwwroot
中:
cd /opt/apigee/apigee-drupal/wwwroot
drush status | grep 'Drupal version'
您会在表单中看到输出:
Drupal version : 7.54
如果您将 Drupal 安装到了 /opt/apigee/apigee-drupal/wwwroot
以外的目录中,请务必先切换到该目录,然后再运行 drush
命令。
更新 Drupal 版本
本部分介绍了如何使用命令行中的 Drush 命令更新 Drupal 版本。另请参阅使用 Drush (Drupal.org) 更新 Drupal。
如需更新 Drupal 安装,请执行以下操作:
- 切换到
/opt/apigee/apigee-drupal/wwwroot
目录或您安装门户的目录。 - 完整备份所有文件、目录和数据库。将备份保存在 Drupal 安装位置之外的位置。如需查看完整说明,请参阅备份门户。
如果您修改了
.htaccess
、robots.txt
或defaults.settings.php
等文件(位于sites
目录中),则必须在更新后重新应用更改。您还需要重新应用在sites/all
目录中进行的所有自定义。 - 将您的网站置于维护模式:
drush vset --exact maintenance_mode 1
drush cache-clear all
- 使用以下命令安装所需版本的 Drupal:
drush pm-update drupal-version
其中 version 是所需的版本。
或者,您也可以运行
drush pm-update drupal
来更新到最新的 Drupal 核心版本。您可以运行drush pm-updatestatus
来列出 Drupal 核心和贡献项目的可用次要更新。 - 重新应用对
.htaccess
、robots.txt
或defaults.settings.php
(在sites
目录中)所做的任何更改。 - 重新应用对
sites/all
目录所做的任何更改。 - 让您的网站退出维护模式:
drush vset --exact maintenance_mode 0
drush cache-clear all
升级 PHP 和 Drupal 贡献模块
使用本部分中的上述说明升级 Drupal 时,Drupal 使用的模块(例如 contrib 和 PHP)也会升级。不过,您应在私有云版本之间及时了解最新的 Drupal 模块。
请注意,如果模块位于 /profiles/apigee/modules/contrib
中,您可以将其替换为该模块的较新版本,方法是将较新版本存储在 /sites/all/modules/contrib
中。Edge for Private Cloud 使用 /sites/all/modules/contrib
中的较新版本,而不是 /profiles/apigee/modules/contrib
中的旧版本。如需了解详情,请参阅更新模块 (Drupal.org)。
如果您安装的新版 Private Cloud 包含之前存储在 /sites/all/modules/contrib
中的较新版本的模块,请从 /sites/all/modules/contrib
中移除该模块。如需了解详情,请参阅迁移模块和主题 (Drupal.org)。
如果我在更新过程中遇到问题,该怎么办?
使用您创建的备份文件将您的网站恢复到之前的状态。请与 Apigee Edge 支持团队联系,并提供更新期间报告的所有错误消息。