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页面就都不会缓存了,对不需要缓存的页面也可以这样做。
帅的无语!