ThinkPHP访问不存在的模块时它也会去执行PHP程序,而不是提示找不到该页面,你在地址栏输什么都不会有404的状态。所以下面就为这个问题做出的解决方案,访问不存在的模块跳到404页面,让网页的用户体验更好,还有SEO优化也有好片的。
在ACTION中新建一个文件EmptyAction.class.php,文件中的代码如下:
<?php
class EmptyAction extends Action{
function _empty(){
header("HTTP/1.0 404 Not Found");//使HTTP返回404状态码
$this->display("Public:404");
}
}
?>
在apache中设置
在你的网站配置中加入 ErrorDocument 404 /404.html 即可。