技术知识库

帮助中心 >  产品文档 >  云服务器 >  Apache主配置文件概述及语法

通过将指令放在纯文本配置文件中来配置Apache HTTP Server 通常调用主配置文件 httpd.conf此文件的位置在编译时设置,但可以使用-f 命令行标志覆盖此外,可以使用该Include 指令添加其他配置文件,并且可以使用通配符包含许多配置文件。任何指令都可以放在任何这些配置文件中。只有在启动或重新启动时,httpd才能识别对主配置文件的更改。

服务器还读取包含mime文档类型的文件; 文件名由TypesConfig指令设置mime.types默认情况下。

httpd配置文件每行包含一个指令。反斜杠“\”可以用作一行的最后一个字符,表示该指令继续到下一行。反斜杠和行尾之间不能有其他字符或空格。

指令的参数由空格分隔。如果参数包含空格,则必须将该参数括在引号中。

配置文件中的指令不区分大小写,但指令的参数通常区分大小写。以井号“#”开头的行被视为注释,并被忽略。注释可能不会与配置指令包含在同一行中。忽略指令之前出现的空格,因此为了清楚起见,您可以缩进指令。空行也被忽略。

使用Defineof或shell环境变量定义的变量值可以使用语法在配置文件行中使用${VAR}如果“VAR”是有效变量的名称,则该变量的值将替换为配置文件行中的该位置,并继续处理,就好像该文本直接在配置文件中找到一样。定义的变量Define优先于shell环境变量。如果未找到“VAR”变量,则字符${VAR} 保持不变,并记录警告。变量名可能不包含冒号“:”字符,以避免与RewriteMap语法冲突 

只有在启动服务器之前定义的shell环境变量才能用于扩展。在配置文件本身中定义的环境变量(例如SetEnv,使用)生效太晚,无法用于配置文件中的扩展。

在变量替换和连接任何连续行之后,正常配置文件中的行的最大长度约为16 MiB。.htaccess文件中,最大长度为8190个字符。

您可以使用apachectl configtest-t命令行选项检查配置文件中的语法错误,而无需启动服务器

您可以使用mod_info's -DDUMP_CONFIG转储配置,解析所有包含的文件和环境变量,<IfDefine>并 <IfModule>删除所有注释和不匹配的 部分。但是,输出不反映重复指令可能发生的合并或覆盖。


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: