httpd.conf中的ErrorDocument无法正常工作

时间:2014-12-29 20:24:01

标签: windows apache xampp errordocument

我想使用403的自定义错误文件,但apache似乎忽略了指令ErrorDocument,只是给了我默认的错误文档。这是httpd.conf

的开头
ServerRoot "C:/xampp/apache"

Listen 80

ErrorDocument 403 "/403.html" 
ErrorDocument 404 "/403.html"

我刚刚添加404以确定它是否可行,但它没有。文件403.html存在于C:\xampp\apache\403.html

我尝试在配置文件中进一步向下移动ErrorDocument指令,其中描述ErrorDocument指令的注释开始但结果是相同的。

我在我测试的文件夹中的任何ErrorDocument个文件中都没有.htaccess个指令。

你能否告诉我为什么阿帕奇无视我?

修改

为了确保我会提到我测试它的方式。我在.htaccess中有C:\xampp\htdocs个文件,其中包含以下内容

Order deny,allow
Allow from 127.0.0.1
Allow from ::1
Deny from all

其目的是拒绝访问所有不明确允许的子文件夹和文件,然后我只是向我的公共IP发送请求以拒绝访问。

1 个答案:

答案 0 :(得分:0)

如果出现任何错误,首先要查看apache安装的logs/error.loglogs/access.log日志文件。

作为http://httpd.apache.org/docs/2.2/mod/core.html#errordocument状态的文档,此指令与当前主机配置的DocumentRoot相关。 您没有使用默认的Apache HTTPD,而是使用预先配置的Apachefriends XAMPP,它具有一些特殊功能,例如: XAMPP附带的标准httpd.conf通过

引用ErrorDocument
# Multi-language error messages
Include conf/extra/httpd-multilang-errordoc.conf

在默认httpd.conf中,DocumentRootC:\apache\htdocs,因此您ErrorDocument 403 "/403.html"中的上述更改(即httpd.conf),您必须放置这些文件放入C:\xampp\htdocs\403.html

顺便说一下,通过添加Include conf/my-custom.confhttpd.conf并在其中添加配置来分隔自定义配置通常是个好主意。