关于404页面大家都已经看过不少了,也知道很多关于SEO优化的知识,例如404页面如果返回的状态码是非404如200结果会诊样呢?很显然会影响搜索引擎SEO。详细的就不说了,猛击看这里
你可以写一个简单的代码检查指定的页面返回的状态码,如下:
- <?php
- function GetHttpStatusCode($url){
- $curl = curl_init();
- curl_setopt($curl,CURLOPT_URL,$url);//获取内容url
- curl_setopt($curl,CURLOPT_HEADER,1);//获取http头信息
- curl_setopt($curl,CURLOPT_NOBODY,1);//不返回html的body信息
- curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);//返回数据流,不直接输出
- curl_setopt($curl,CURLOPT_TIMEOUT,30); //超时时长,单位秒
- curl_exec($curl);
- $rtn= curl_getinfo($curl,CURLINFO_HTTP_CODE);
- curl_close($curl);
- return $rtn;
- }
- $url="http://yourdomain";
- echo GetHttpStatusCode($url);
- echo "<br>".$url;
- ?>
怎么自定义404页面呢?这个就不多说。
之前使用 speedPHP 框架就遇到这个问题,伪静态下怎么让404页面显示正确的404状态码呢?
- $spConfig = array(
- 'dispatcher_error' => "header('HTTP/1.0 404 Not Found');import(APP_PATH.'/404.html');exit();",
- );
这样就可以了。