httpd中的目录conf、conf.d和conf.modules.d有什么区别?

httpd中的目录conf、conf.d和conf.modules.d有什么区别?

我在我的 Amazon Linux 实例上安装了 httpd 包,并且/etc/httpd/目录包含子目录:

会议/

conf.d/

conf.modules.d/

我注意到这些是配置目录。

它们之间有什么区别?

答案1

这是基于 RHEL 的 Apache HTTPd 配置,基于 Debian 的配置有很大不同。

/etc/httpd/conf/- 主要 httpd 配置所在的位置,httpd.conf以及其他一些基本配置文件。将httpd.conf有一个包含其他目录的指令。这样做是为了让包拥有主配置文件和目录。

/etc/httpd/conf.d/- 以 .conf 结尾的文件目录,包含在主配置中。这些文件包含语法片段httpd.conf,可以覆盖和补充基本配置。某些包(例如mod_ssl)将包含放置在此处的文件。管理员也可以在此处设置其个人站点配置。

/etc/httpd/conf.modules.d/- 类似于conf.d的目录,仅用于加载httpd模块。包含模块的包将在此处有一个文件来启用它,以便在服务启动时加载它。

这种结构背后的主要理念是使软件包更容易放入基本配置中,而无需编辑主 httpd.conf 文件。由于基于 RHEL 的发行版不会在安装后启动服务,因此系统管理员需要在启动 httpd 进程之前适当修改文件。这与基本的 debian 配置结构不同,后者使用名称中带有“-available”的目录,管理员必须使用 a2enconf/a2enmod/a2ensite 命令启用它们(或手动链接它们)。

相关内容