对于我的网页,我有一个.htaccess
文档,看起来像这个
<Files .htaccess>
order allow,deny
deny from all
</Files>
ErrorDocument 404 /websites/404/index.php
现在,据我所知,您可以通过添加另一行来包含更多的ErrorDocument
。例如
<Files .htaccess>
order allow,deny
deny from all
</Files>
ErrorDocument 404 /websites/404/index.php
ErrorDocument 503 /websites/maintenance/index.php
但是,当我尝试使用下面的代码ErrorDocument 451 /websites/451/index.php
为HTTP451添加页面并重新加载页面时,我会得到一个Server error! Error 500
。后来我发现这是因为XAMPP不再拾取中包含.htaccess
文件的文件夹,并且只能通过删除error 451
的ErrorDocument
来解决此错误。造成这种情况的原因是什么?我该如何解决?
注意
我还发现error 418: I'm a teapot
和都会发生这种情况
编辑
只是为了包含更多关于我正在使用的软件的信息。我正在使用
- XAMPP控制面板v3.2.2
- Apache 2.4.17-这是XAMPP附带的版本
尽管有很多HTTP状态代码(由IANA正式维护(,但并非所有的Web服务器都支持所有这些。从Apache 2.4开始,Apache不支持状态代码418和451,并将其静默地转换为错误500。
Apache 2.4中最新添加的受支持状态代码是414和501,以及400的崩溃预防(来自Apache 2.4更改日志(:
核心:支持HTTP 501和414状态码的自定义ErrorDocuments。PR 57167[陆]
核心:在CONNECT请求无效的情况下防止服务器崩溃使用服务器端的状态代码400的自定义错误页面包括。PR 58929[Ruediger Pluem]
请参阅支持的HTTP状态代码列表(自Apache 2.4.4起(。
请参阅关于将自定义状态代码重新映射为500个错误的旧错误(针对2.2提交(。
请参阅前面关于类似问题的问题(但也适用于Apache 2.2(。
从您的维基百科链接中,它指出:
它(451(于2015年12月18日由IESG批准。[8]于2016年2月发布为RFC 7725。
451状态可能足够新,以至于Apache(或mod_rewrite所依赖的其他供应商(还没有包括对状态代码的支持。例如,有一个June 2016
错误报告,其中Red Hat Enterprise - httpd-2.4.6-40
看起来仍然打开:https://bugzilla.redhat.com/show_bug.cgi?id=1343582