首页 > 代码库 > thinkphp3.2中开启静态缓存后对404页面的处理方法

thinkphp3.2中开启静态缓存后对404页面的处理方法

静态缓存很实用但是有时有些不需要静态缓存,如404页面,第一次访问返回404页面并缓存,第二次换回的状态就是200,属于正常访问,虽然人眼可以看出是404页面,但是搜索引擎不会的,而是把这个页面当成正常页面收录,那么问题就大了,404页面有一千个或更多,搜索引擎会认为你作弊制造大量垃圾内容,而且网站对安全也不利,等等。

解决方法:在404状态码之前将缓存动态关闭 C(‘HTML_CACHE_ON‘,false);

1
2
3
4
5
6
7
// 404
public function _404(){
    C(‘HTML_CACHE_ON‘,false);//关闭缓存
    header("HTTP/1.0 404 Not Found");
    $this->display(‘Public:404‘);
    exit;
}

这样所有的404页面就都不会缓存了,对不需要缓存的页面也可以这样做。

thinkphp3.2中开启静态缓存后对404页面的处理方法