如何在Apache Web服务器配置文件中找出语法错误?
时间:2020-01-09 10:38:50 来源:igfitidea点击:
Apache Web服务器支持特殊的语法检查。
您只能对配置文件运行语法测试。
以下两个重要的语法检查器选项可以传递给apache二进制程序httpd(Red Hat/Fedora Linux)或apache-perl(Debian Linux apache二进制文件):
执行以下命令,将检测语法错误:
如果您使用的是Debian Linux:
/usr/sbin/apache-perl -t
如果您使用的是Red Hat Linux:
/usr/sbin/httpd -t
其中:
- -t:这些语法解析后,程序立即退出,返回码为0(即,语法OK消息)或返回码不等于0(即,Syntax Error消息)。
考虑以下示例:
/usr/sbin/apache-perl -t Warning: DocumentRoot [/data/network/www/blogs] does not exist Syntax OK
用-T选项替换它:
/usr/sbin/apache-perl -T
选项-T与选项-t相同,但是不检查配置的文档根目录(警告消息消失)。
另一个例子:
/usr/sbin/apache-perl -t -S Syntax error on line 1059 of /etc/apache-perl/httpd.conf: Invalid command CustomLogl, perhaps mis-spelled or defined by a module not included in the server configuration
如您所见,第1059行的错误需要修复。
使用vi文本编辑器:
vi +1059 /etc/apache-perl/httpd.conf
更正后再次输入命令:
/usr/sbin/apache-perl -t S