我在根目录中有一个.htaccess
文件和404.php文件。我的.htaccess
文件的内容是:
ErrorDocument 404 /404.php
但是当我拼写错误的url时,404.php
无法打开。相反,我得到了以下消息:
找不到
在此服务器上找不到请求的URL /mywebsite/ites.php。
此外,在尝试使用ErrorDocument处理请求时,遇到了404未找到错误。
但当我尝试ErrorDocument 404 google.com
时,它起作用了。
发布于 2014-04-10 09:22:13
我将总结我对这个答案的评论:
设置时...
ErrorDocument 404 /404.php
/404.php
路径可能不是htdocs文件夹根目录的绝对路径,而是文件系统的根目录。这可能是基于您的配置,例如/home/htdocs/
或~
等。
因此,人们需要做的是找出绝对路径并相应地设置它。
发布于 2014-04-10 09:04:53
相对于.htaccess
文件,您的404.php
实际位于何处?你能简单地把它作为一个直接的URL来运行吗?该文件是否可由服务器读取?或者它是在嵌套的子目录中?您也可以尝试完整的URL:
ErrorDocument 404 http://mygreat.server/404.php
请参阅official Apache documentation here中的详细信息。
发布于 2018-09-19 00:41:53
您可以这样使用ErrorDocument:
ErrorDocument <3-digit-code> <action>
<3-digit-code>
是一个HTTP response status code (例如,"404")。
您有三种类型的<action>
,它们由您键入的内容触发:
如果操作以“/”开头,则为
例如:
本地路径:ErrorDocument 404 /local/path/to/404.php
外部网址:ErrorDocument 404 http://external_url.example.com/server_error.html
自定义文本:ErrorDocument 404 "Oops! We can't find that pesky file. Sorry."
您选择了一个本地路径,但从服务器的角度来看,可能没有正确地指向该文件。请注意,本地服务器路径不是您在URL中看到的路径,并且通常包含诸如~/htdocs/www/domainname/
之类的内容。
问题很可能是404.php
的路径错误,服务器找不到它。
https://stackoverflow.com/questions/22976772
复制相似问题