PHP域名重定向及SEO优化
现在越来越多的站长开始使用单独的ECS了,可能或多或少,放置的网站不止一个,像我比较懒,域名解析通常是用(*)泛解析,最近网站安装了证书,默认站点都跳至Https,无意间发现其他域名都重定向到了现在的博客,这对SEO可不是好事,如果开始改造301重定向的方法。
这需求说起来很奇怪,大致为以下几点:
一、开发是在本地,我通常会使用局域网IP访问,例如:192.168.31.233,127.0.0.1,所以数字地址忽略。
二、不带www的域名要301到带www的。
三、其他不相干的域名一律返回404。
四、判断是http还是https。
function transfer($url){
$thisurl = $_SERVER['HTTP_HOST'];
$Parameters = $_SERVER['REQUEST_URI'];
$number = str_replace('.', '', $thisurl);
$http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' :'http://';
if(!strstr($url, $http_type.$thisurl) && ! is_numeric($number)){
if(strstr($url, $thisurl)){
echo header("HTTP/1.1 301 Moved Permanently");
echo header("Location: ". $url . $Parameters);
}else{
echo header("HTTP/1.1 404 Not Found");
echo header("Status: 404 Not Found");
}
exit();
}
}使用方法:
transfer('https://www.xhbk.cn');

共 0 条评论