首页 > 代码库 > php 301 重定向 转自http://www.icoa.cn/a/475.html

php 301 重定向 转自http://www.icoa.cn/a/475.html

内容简介

有时候我们的有多个域名指向同一个网站,或者我们更换了网站的网址,那么怎么样将原来网站的流量导入到新网址中呢,那么我们可以用301重定向的方式,而且这种方式是对搜索引擎比较友好的方式。如果首页是PHP做的,可以使用PHP的301重定向的代码……

相关关键词:PHP   301   跳转   重定向  

本文链接:http://www.icoa.cn/a/475.html [复制网址]

以前介绍过301重定向ASP代码,也就是ASP程序可以用代码来实现网址的301跳转,如果我们使用的PHP程序,那么同样可以用一段代码来实现网址的301重定向。

如果仅仅是对某个页面进行301跳转,其实很简单,只要在PHP页面的头部输入下面的代码就可以。

1
2
3
4
<?php
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: http://www.icoa.cn");
?>

 

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

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

一、建立一个301.php(文件名自取)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?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.icoa.cn‘)//如果域名不是带www的网址那么进行下面的301跳转
{
header(‘HTTP/1.1 301 Moved Permanently‘);//发出301头部
header(‘Location:http://www.icoa.cn‘.$the_url);//跳转到带www的网址
}
?>

 

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

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

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

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


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

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