我在我的 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 命令启用它们(或手动链接它们)。