Apache2 的配置文件的用途是什么?

xra*_*alf 3 configuration apache-httpd

为什么Apache2有多个配置文件?他们的角色是什么?我找到了一些关于旧 Apache 版本的信息,但它通常已被弃用,并且 Apache 官方文档没有解释拆分配置文件的逻辑以及它们的用途。

cjc*_*cjc 5

唔。从一种观点来看,您可以将所有配置转储到一个 httpd.conf 文件中,但这会……难以阅读。

大多数发行版将通过让 httpd.conf 包含子目录来划分配置。您可能需要查看特定于发行版的文档,例如:

https://help.ubuntu.com/12.04/serverguide/httpd.html

对于 Ubuntu,Apache 配置目录是 /etc/apache2。为方便组织,主要子目录是 conf.d、mods-available、mods-enabled、sites-available 和 sites-enabled。您可以将模块配置保存在 mods-available 目录中,并将虚拟主机配置保存在 sites-available 目录中。请注意, *-enabled 目录包含指向相应 *-available 目录的符号链接,因此您可以在 *-available 中保留一堆东西,但只能通过从 *-enabled 目录进行符号链接来激活它们。主 httpd.conf 文件将包含 *-enabled 目录中的内容。

RHEL/CentOS 不能那样工作,如何设置 /etc/httpd 基本目录由您自行决定。您可以将所有内容转储到 /etc/httpd.conf 中;您可以创建与 Ubuntu 类似的目录结构(并修改 httpd.conf 以包含您创建的 *-available 目录),或它们的某种组合。

因此,您可能需要先查看发行版的文档。正如您将在 Ubuntu 中看到的那样,它们提供了指向其他资源的链接。

  • 为了补充这个答案,文档 [DistrosDefaultLayout](http://wiki.apache.org/httpd/DistrosDefaultLayout) 解释了发行版之间关于 Apache 配置文件布局的差异。 (2认同)