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 条评论

评论:

发送