logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动
06/10/2025, by Ivan

在 Drupal 8.8.0 中简化

注意:如果您从 Drupal 8.8.0 或更高版本开始构建项目,您的网站已经使用了正确的文件结构,并且已准备好转换为使用 Composer 管理。

本页是一个分步指南,教您如何在以前未使用 Composer 安装的现有网站上手动添加 Composer 支持。如果您是从压缩包手动安装 Drupal 8,或使用了已弃用的 Composer 模板(如 drupal/drupal),此指南适用于您。

适用于基于 Drupal 8.8.0 或更新版本的网站

即使您是通过压缩包安装的 Drupal 8.8.0,Composer 也已预先配置好。因此,您应该可以直接使用 Composer 管理网站,而无需进行额外的转换步骤。

06/10/2025, by Ivan

快速启动命令是从 Drupal 8.6.x 开始新增的功能。它并不适用于生产环境。然而,它可以在您的计算机上使用 PHP 内置的 Web 服务器来安装并运行 Drupal。

重要提示:快速启动命令仅用于本地运行 Drupal 的演示版本。如果您需要为生产环境安装 Drupal 8,请参阅本指南其余部分的安装说明。

步骤 1 - 安装 PHP

MacOS

MacOS 10.13(High Sierra)及更高版本自带 PHP 7,无需手动安装和配置 PHP。

MacOS 10.12(Sierra)及更早版本自带 PHP 5.x。您需要将其升级到 PHP 7 才能支持 Drupal 8。

Linux

安装 PHP 及所需扩展。在基于 Debian 的 Linux 平台(包括 Ubuntu)上,请使用以下命令:

06/10/2025, by Ivan

本文档尚不完整获取更多信息。

防御 HTTP HOST Header 攻击(防止您的网站被伪装成其他网站)

Drupal 7 在核心中添加了一个新功能,该功能并非直接供用户交互使用,但有时被称为 poormanscron。此功能会运行 Drupal 网站的定期任务,如清理日志文件、发送电子邮件和清除缓存。该功能与动态定义的“基础 URL”(添加于 Drupal 4.7)结合时,可能会导致一些奇怪的情况。本文介绍了其中一些由两种功能或模块共同引发的问题,以及如何防止它们发生。以下说明假设某些默认配置——在最后我会讲解如何更改默认设置来避免这些问题。

场景 1:用户收发属于其他域名的电子邮件

这种行为相对容易重现:

06/10/2025, by Ivan

在您开始之前。

在更新您的 Drupal 8 网站时,有几个可供选择的选项。如果您还不熟悉这些选项,为了让您更轻松愉快地了解,建议您先阅读这份入门文档,它汇总了所有可供您选择的方案。

06/10/2025, by Ivan

开始之前

更新(Update) Drupal 网站,指的是从一个次要版本升级到另一个版本,例如从 “8.4.4” 升级到 “8.4.5”。本指南介绍如何更新您的 Drupal 8 网站。

升级(Upgrade) Drupal 网站,指的是更换主要版本,例如从 Drupal 6 升级到 8,或从 Drupal 7 升级到 8。

更新 Drupal 8 核心

下表列出了更新 Drupal 核心的不同方法。如果您不确定哪种方式最适合您的情况,请查看“推荐”一栏。

06/10/2025, by Ivan

开始之前

如果您尚未阅读,建议先查看这篇介绍,其中简要说明了更新 Drupal 8 时可选择的所有方法。

附注:此更新步骤也记录在用户指南中。

如果您使用 Composer 安装了带有第三方依赖的扩展模块,请勿使用以下方法更新,因为这些步骤会覆盖 vendor/ 目录。

手动更新 Drupal 8 核心

以下是使用命令行(shell)手动更新 Drupal 8 核心的步骤:

1. 备份您的文件和数据库。完整的备份可以让您在更新失败时轻松回滚到先前版本。

06/10/2025, by Ivan

本文档已过时。请帮助更新到最新版本

在开始之前

推荐使用 Composer 来管理 Drupal 的依赖项;请参阅《在 Drupal 中使用 Composer》了解更多信息。Drush 9 不再支持更新 Drupal,而是将此任务交给 Composer。因此,建议使用 Composer 更新 Drupal。不过,如果您长期使用 Drush,仍可使用 Drush 8(版本 8.14 或更高)来更新 Drupal 8。

P.S.:请参阅更新概览,了解所有可用更新方法。

提示:如果在更新过程中出现致命错误,请务必恢复到更新前的备份。

06/10/2025, by Ivan

本文档尚不完整欢迎补充更多信息。

更新至 Drupal 8.8.0 或更高版本时遇到问题?
在 Drupal 8.8.0 中,Composer 管理方式发生了关键性变化,这些改进将长期提升 Drupal 网站的依赖管理体验。然而,从旧版本升级时可能会遇到一些兼容性问题。

准备工作

要了解 Composer 如何管理 Drupal 依赖,请参阅 在 Drupal 中使用 Composer。如果您还不确定是否应通过 Composer 进行更新,请比较不同的更新方法。

为方便操作,这里还包括 Drush 命令,用于执行数据库更新和缓存清理等任务——许多用户认为 Drush 比管理界面更快速高效。

06/10/2025, by Ivan

本文档尚不完整欢迎补充更多信息

由于推荐的 Drupal 8 网站安装和更新方式使用 Composer,因此本页也将介绍如何通过 Composer 更新模块。同时,因为您将使用命令行,我们还会用到 Drush 来执行部分任务。

习惯使用 Drush 进行模块更新的用户需要注意:从 Drush 9 起(包括当前的 Drush 10),命令 uppm-updatepm-updatecodepm-updatestatus 均已弃用。您应改用相应的 Composer 命令。

查看可更新模块列表

使用 Composer 内置命令列出所有有更新可用的 Drupal 包:

composer outdated 'drupal/*'

您也可以使用 Composer 的 show 命令获取类似信息。

06/10/2025, by Ivan
在开始排查数据库更新相关问题之前,请务必先备份数据库和代码库。

如果存在阻止数据库更新安全运行的问题,update.php 将显示错误信息。

请仔细阅读错误消息,以便针对性地解决问题。

无效的模块或主题

在某些情况下,update.php 可能会提示存在无效的模块或主题。当某个模块或主题在配置文件 core.extension.yml 中被声明,但其文件缺失或与网站不兼容时,就会发生这种情况。

排查此问题时,首先要确认您没有导入错误版本的 core.extension.yml 配置文件。然后根据具体的错误信息进一步解决问题。问题解决后,重新运行 update.php。