关于 bitrix-settings
bitrix-settings 是用于配置 Bitrix 内核设置文件的参考技能,涵盖 `.settings.php` 与 `.settings_extra.php`。它说明文件优先级、全局和模块配置段,以及管理端或内核写入时的注意事项。
主要功能
- 01主设置文件与额外文件优先级
- 02全局及模块配置段说明
- 03配置段整体替换规则
- 04只读配置段格式
- 05闭包与内核写入注意事项
适用场景
- 01判断当前读取的设置文件
- 02放置项目专属配置
- 03配置 SMTP 和设置段
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ bxmaximum/ bitrix-framework-skills --skill bitrix-settings安装后在 Claude Code 中输入/bitrix-settings确认已加载。
附带文件rules/sections.mdrules/smtp.md
详细介绍
内核配置(.settings.php)
基线:main 23.0+ · 已验证:main 26.800.0
| 任务 | 阅读 |
|---|---|
各分区:connections、exception_handling、cookies、crypto、ui、…… | rules/sections.md |
通过 SMTP 发邮件(smtp、按发件人配置 SMTP) | rules/smtp.md |
读取哪个文件
- 主文件:如果
/local/.settings.php存在,则读取该文件(自 main 24.100 起);否则读取/bitrix/.settings.php— 只读取其中一个。/local文件会替换内核文件:复制所有分区,包括connections。 - 附加文件:读取
/local/.settings_extra.php;否则读取/bitrix/.settings_extra.php— 只读取其中一个;在主文件之后加载,每个顶层分区都会替换整个分区(不进行深度合并)。 - 将项目分区(闭包、机密、
routing、loggers、messenger)放入/local/.settings_extra.php;该文件会覆盖/bitrix/.settings_extra.php,因此请将后者的分区移过来。 - 内核/管理后台写入(
Configuration::setValue()、设置表单)会将主文件数据通过var_export写入主文件;在其中使用闭包会导致下次写入失败。附加文件不会被重写。 - 站点检查器和
services/quickway.php只读取/bitrix/.settings.php— 请确保该文件有效。IsConfigFile()仅禁止通过文件管理器访问/bitrix/.settings.php,不会禁止访问/local/.settings*.php。 - 仍然需要
php_interface/dbconn.php(/local自 main 24.100 起,否则为/bitrix)。
格式
'section' => ['value' => [...], 'readonly' => true] — 运行时的 Configuration::add()/delete() 和管理后台表单会跳过 readonly 分区。读取:Configuration::getValue('section')。
全局与模块
| 文件 | 分区 |
|---|---|
| 全局主文件/附加文件 | connections、cache、cache_flags、session、cookies、crypto、exception_handling、routing、messenger、loggers、composer、http_client_options、pull、smtp、ui、default_language、services |
/local/modules/<id>/.settings.php(模块安装期间读取) | services、controllers、console、messenger、rest(v3) |
不存在 validation 分区(bitrix-validation)。routing 仅限全局配置(bitrix-routing)。
评论
支持 Markdown