网站返回带有内容的错误 404
Posted
技术标签:
【中文标题】网站返回带有内容的错误 404【英文标题】:Website returns error 404 with content 【发布时间】:2015-12-28 11:16:53 【问题描述】:我最近切换到一个新的虚拟主机并发现一个不寻常的错误 - 我网站上除 root 以外的所有页面都返回 404 错误,但页面的实际 html。
举个例子,我可以给这个页面:
http://www.mm-vet.cz/cenik
它返回 404 错误,但带有实际页面 html(因此您可以在浏览器中看到它)。
这是我的 .htaccess
RewriteEngine On
RewriteBase /
RewriteRule \.(css|jpe?g|gif|png|js|ico)$ - [L]
RewriteCond %QUERY_STRING !^cat
RewriteRule ^(.+?)/?$ /index.php?cat=$1 [L]
为什么我的页面实际存在时服务器返回 404 错误,我该如何解决?
【问题讨论】:
你用的是哪个php框架? 对这个网站没有任何意义 删除此行RewriteRule ^([a-z0-9_-]+)\.html$ index.php/page/$1 [L]
没有这样一行
对不起这行RewriteRule ^(.+?)/?$ /index.php?cat=$1 [L]
【参考方案1】:
您定位一组扩展是否有特定的原因?这是否可以通过使用更简单的规则来检查请求的文件是否存在,如果不存在,则执行重写?
RewriteEngine On
RewriteBase /
RewriteCond %REQUEST_URI !-f
RewriteRule ^(.+?)/?$ /index.php?cat=$1 [L,QSA]
您的 PHP 代码是否在任何时候发送header('HTTP/1.0 404 Not Found')
?是否被调用?
我从未遇到过 webhost 发送 404 错误,但也发送请求的内容。
【讨论】:
以上是关于网站返回带有内容的错误 404的主要内容,如果未能解决你的问题,请参考以下文章