RewriteEngine On
ErrorDocument 404 /exception/404.php
//if url ends with .php/ , show custom 404 page
RewriteRule .php/$ - [R=404,L]
//this line caused the custom 404 page broken
RewriteRule .php$ - [R=404,L]
在我添加第4行之前:wwwspeedcubing.top/index.php
(show索引页)
speedcubing.top/index.php/
(show客户404页面)
在我添加了第4行之后:请speedcubing.top/index.phpspeedcubing.top/index.php/
它们都显示:
未找到
服务器上没有找到请求的URL。
此外,尝试使用ErrorDocument处理请求时遇到404 Not Found错误。
1条答案
按热度按时间7xllpg7q1#
ErrorDocument
指令和RewriteRule
指令来自于不同的Apache模块,它们在不同的时间运行。因此,设置R=404
不会导致Apache调用ErrorDocument
处理程序,它最终会显示默认的404
Apache处理程序。您应该在
/exception/404.php
中添加以下行来设置自定义http响应代码:并让您的.htaccess代码如下所示: