我是 Apache 和 Linux 的新手,正在阅读httpd.conf
。我看到default-server.conf
其中的一行:
# UserDir:如果收到 ~user 请求,则附加到用户主目录的目录名称。
# # 要禁用它,只需 从 /etc/sysconfig/apache2 中
的 APACHE_MODULES 模块列表中删除 userdir 即可。 #
httpd.conf
该文件与文件 (以及可能包含的其他文件)之间的关系是什么/etc/apache2/
?我更关心模块,但一般解释会有所帮助。
答案1
https://httpd.apache.org/docs/2.4/configuring.html
Apache HTTP Server 的配置方法是将指令放在纯文本配置文件中。主配置文件是通常名为httpd.conf
。此文件的位置是在编译时设置的,某些发行版可能会选择使用不同的名称。此外,配置文件名可以在启动时使用-f
命令行标志覆盖。
配置文件按从上到下的顺序进行解析,通常指令的顺序很重要。
此外,其他配置文件可以使用Include
和IncludeOptional
中的指令http.conf
和通配符*
可用于包含多个配置文件。包含文件本身也可以包含该Include
指令。
包含的文件将会和主 httpd.conf 在 Include 指令的位置合并。
任何指令都可以放在这些配置文件中的任何一个中。只有 httpd 启动或重新启动时,它才能识别对主配置文件的更改。
一个相当典型的 httpd.conf 看起来类似于此:
# httpd.conf
Directives
...
IncludeOptional early-includes/*.conf
More Directives
...
IncludeOptional late-includes/*.conf
Even More Directives
IncludeOptional active-virtualhosts/*.conf
其中一些/所有*.conf
文件均按词典顺序包含。
我思考你/etc/sysconfig/apache2
不是一个 httpd.conf 文件,也不是Include
,通常这些/etc/sysconfig/
文件来自启动脚本并用于设置命令行参数和选项。