logo

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

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

演示 EBT 模块 下载 EBT 模块

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

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

演示 EPT 模块 滚动

滚动

9.9.2. 配置分割(Config Split)、配置忽略(Config Ignore)。为不同实例创建不同的配置。

17/10/2025, by Ivan

在开发和生产实例中,访问第三方服务的配置经常需要不同。为了通过配置实现这一点,你需要使用配置分割(Configuration Split)模块:

https://www.drupal.org/project/config_split

启用配置分割模块后,你将能够为不同实例指定文件夹。让我们进入配置模块的配置分割设置页面:

/admin/config/development/configuration/config-split

configuation settings

现在让我们为本地、开发和生产实例添加配置分割设置。

spit settings

如果路径在所有实例中相同,可以立即指定文件夹路径。你还需要禁用“启用”复选框,我们将在每个实例的 settings.php 文件中分别启用所需的配置。

created live

添加配置分割设置后,我们需要创建 config/local、config/dev、config/live 文件夹:

config

现在让我们在本地实例中启用本地配置:

$config['config_split.config_split.local']['status'] = TRUE;

相应地,应该在 dev 和 live 实例的 settings.php 中添加以下行:

// Dev
$config['config_split.config_split.dev']['status'] = TRUE;
 
// Live
$config['config_split.config_split.live']['status'] = TRUE;

现在,要为特定实例重定义任何配置,你只需将必要的配置文件放入所需的文件夹中,这样该实例就会使用单独的配置。让我们为本地站点单独重命名站点名称:

/config/local/system.site.yml:

uuid: e6754486-60a0-48ad-b2d1-84a9b46926f4
name: 'DrupalBook Lessons - Local Site'
mail: levmyshkin89@gmail.com
slogan: ''
page:
  403: ''
  404: ''
  front: /node
admin_compact_mode: false
weight_select_max: 100
langcode: en
default_langcode: en
_core:
  default_config_hash: yXadRE77Va-G6dxhd2kPYapAvbnSvTF6hO4oXiOEynI

system yml

现在,如果你进入配置同步页面,你将看到已重写的配置:

view changed

现在,你可以为不同的实例定义不同的访问权限,例如 SMTP、Salesforce、支付系统和其他服务。

配置忽略(Config Ignore)
也许你不喜欢 SMTP 访问权限出现在配置文件中并被添加到 Git 中。那么,你可以使用配置忽略模块将 SMTP 设置添加到忽略列表中:

https://www.drupal.org/project/config_ignore

我们使用配置分割模块为站点名称创建了不同的设置。我们也可以将 system.site 配置添加到忽略列表中。让我们进入配置忽略设置页面:

/admin/config/development/configuration/ignore

然后,我们将这个 system.site 配置添加到忽略列表:

ignore

现在,如果你进入配置同步页面,更新和被忽略的配置将显示在一个单独的部分:

syncronize