不同域名301重定向PHP代码

重庆陈江林分享:来源《逍遥峡谷》的301重定向PHP代码,写得非常的前面,而且自己正好有这样的问题,所以转载下来分享给需要的人。

之前重庆SEO也有分享关于php代码重定向DNSpod来实现该功能,那么同样可以用另外的一段代码来实现网址的301重定向。如果仅仅是对某个页面进行301跳转,其实很简单,只要在PHP页面的头部输入下面的代码就可以。
<?php
Header(“HTTP/1.1 301 Moved Permanently”);
Header(“Location: http://www.icoa.cn”);
?>

这个对于更换了网址或者网站结构来说非常方便,但是如果针对很多页面那么这种跳转方式就不友好了,我们应该根据不同的页面跳转的不同的网址。

这个还可以实现比如chenjianglin.cn跳转到www.chenjianglin.cn上,也就是让所有的页面都用带www的网址。

一、建立一个301.php(文件名自取)
<?php
$the_host = $_SERVER[‘HTTP_HOST’];//取得当前域名
$the_url = isset($_SERVER[‘REQUEST_URI’]) ? $_SERVER[‘REQUEST_URI’] : ”;//判断地址后面部分
$the_url = strtolower($the_url);//将英文字母转成小写
if($the_url==”/index.php”)//判断是不是首页
{
$the_url=””;//如果是首页,赋值为空
}
if($the_host !== ‘www.chenjianglin.cn’)//如果域名不是带www的网址那么进行下面的301跳转
{
header(‘HTTP/1.1 301 Moved Permanently’);//发出301头部
header(‘Location:http://www.chenjianglin.cn’.$the_url);//跳转到带www的网址
}
?>

其中if($the_host !== ‘www.chenjianglin.cn’)中的“!==”是不完全等于的意思,也可以用“!=”不等于,这样,除了可以将chenjianglin.cn跳转到带www的网址,还可以把所有绑定到这个空间的域名跳转的www.chenjianglin.cn。

因为有朋友留言说首页跳转之后网址里会出现/index.php,于是增加了一个判断是否是首页的语句。

二、在网页文件中调用301.php

<?php include("301.php"); //301重定向 ?>

将这个代码放到你所有网页的最前面。

好了,重定向就做好了,将301文件上传到网站目录,就可以去看着你的成果了。

来源链接:http://www.icoa.cn/a/475.html,以上内容与原文有所改动,原文精华全部保留。

注:红字部分是我觉得比较好的地方,之前我就遇到过这样的问题,一直无法解决,看到这篇文章后果断转载,以备急用!

发表评论

电子邮件地址不会被公开。 必填项已用*标注