主配置文件所在路径为:
[root@kittod ~]# ll /etc/httpd/conf/httpd.conf -rw-r--r--. 1 root root 11921 Oct 20 14:25 /etc/httpd/conf/httpd.conf3.2、默认主配置文件详解
# ServerRoot:目录树的顶部,服务器的保留配置、错误和日志文件。不要在目录路径的末尾添加斜杠。 ServerRoot指令设置服务器所在的目录。通常,它将包含conf/和logs/子目录。其他配置指令(例如, Include或LoadModule)中的相对路径被视为相对于此目录。如果将ServerRoot指向非本地磁盘,如果使 用基于文件的互斥,请确保在互斥指令中指定本地磁盘。如果希望为多个httpd守护进程共享同一 ServerRoot,则至少需要更改PidFile。 ServerRoot "/etc/httpd" # Listen指令指示apachehttpd只侦听特定的IP地址或端口;默认情况下,它响应所有IP接口上的请求。 Listen现在是一个必需的指令。如果它不在配置文件中,服务器将无法启动。 # Listen指令告诉服务器接受指定端口或地址和端口组合上的传入请求。如果只指定了端口号,服务器将侦 听所有接口上的给定端口。如果给定了IP地址和端口,服务器将侦听给定的端口和接口。 # 可以使用多个Listen指令指定要侦听的多个地址和端口。服务器将响应来自任何列出的地址和端口的请 求。 Listen 80 # 此指令允许在服务器配置文件中包含其他配置文件。 # Shell样式(fnmatch())通配符可用于路径的文件名或目录部分,以按字母顺序同时包含多个文件。此 外,如果Include指向一个目录而不是一个文件,apachehttpd将读取该目录和任何子目录中的所有文件。 但是,不建议包含整个目录,因为很容易意外地将临时文件留在目录中,从而导致httpd失败。相反,我们鼓 励您使用如下所示的通配符语法,以包括与特定模式匹配的文件,例如*.conf。 # 如果通配符表达式与任何文件不匹配,则Include指令将失败并出错。如果忽略不匹配的通配符,则可以使 用IncludeOptional指令。 # 指定的文件路径可以是绝对路径,也可以是相对于ServerRoot目录的路径。 Include conf.modules.dpublicu html">将不匹 配/home/user/publicu html,但3.3、默认测试页面将匹配。 # 如果愿意,目录路径可以被引用,但是如果路径包含空格,则必须被引用。这是因为空格表示参数的结束。 # 拒绝访问服务器的整个文件系统。您必须明确允许访问下面其他 块中的web内容目录,none表 示忽略目录下的.htaccess文件 # 这里拒绝所有/的访问 # documentRoot:提供文档的目录。默认情况下,所有请求都来自此目录,但符号链接和别名可用于指向其 他位置。 documentRoot "/var/www/html" # 允许对该目录的访问AllowOverride none Require all denied AllowOverride None # Allow open access: Require all granted # 进一步放宽对默认文档根目录的访问:# 这里启用了基于文件目录和符号链接的访问,注释改行表示关闭该功能 Options Indexes FollowSymlinks AllowOverride None Require all granted # 如果指定模块存在,则按照指定的指令执行DirectoryIndex index.html # 包含应用于匹配文件名的指令,这里拒绝了.ht前缀的所有文件Require all denied # 错误日志路径,ErrorLog指令设置服务器将记录其遇到的任何错误的文件名。如果文件路径不是绝对路 径,则假定它是相对于ServerRoot的。 ErrorLog "logs/error_log" # 日志级别,按照严重程度 debug < info < notice < warn < error < crit < alert < emerg. LogLevel warn # 访问日志格式化配置模块,详见 http://httpd.apache.org/docs/2.4/mod/mod_log_config.html#formatsLogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined LogFormat "%h %l %u %t "%r" %>s %b" common LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %I %O" combinedio CustomLog "logs/access_log" combined# alias:将web路径映射到文件系统路径,并用于访问不在documentRoot下的内容。 # scriptAlias:控制哪些目录包含服务器脚本。脚本别名基本上与别名相同,只是目标目录中的文档被视 为应用程序,并在请求时由服务器运行,而不是作为发送到客户端的文档。关于尾随“/”的规则适用于 scriptAlias指令和Alias指令。 scriptAlias /cgi-bin/ "/var/www/cgi-bin/" # 对cgi目录的定义AllowOverride None Options None Require all granted # 对mime的配置TypesConfig /etc/mime.types AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType text/html .shtml AddOutputFilter INCLUDES .shtml # 字符集配置 AddDefaultCharset UTF-8 # 对mime的配置MIMEMagicFile conf/magic # 在支持它的系统上,可以使用内存映射或sendfile系统调用来传递文件。这通常会提高服务器性能,但在 从网络安装的文件系统提供服务时,或者在系统上中断对这些功能的支持时,必须将其关闭。 EnableSendfile on # 包含其他配置文件 IncludeOptional conf.d/*.conf
当用户没有自定义页面在默认目录 /var/www/html下时,服务器会按照以下配置文件引导访问该测
试页面。
[root@kittod ~]# ll /etc/httpd/conf.d/welcome.conf -rw-r--r--. 1 root root 516 Jun 15 2020 /etc/httpd/conf.d/welcome.conf
如果需要自定义配置文件,建议按照主配置文件最后一行指令来包含指定后缀的文件
# Load config files in the "/etc/httpd/conf.d" directory, if any. IncludeOptional conf.d/*.conf3.4、测试自定义页面
给指定文件写入信息,测试自定义页面
[root@kittod ~]# echo welcome to httpd! > /var/www/html/index.html



