PHP实现301重定向
in 建站教程 with 0 comment

PHP实现301重定向

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

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

<?php
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: https://www.tiezi.xyz");
?>

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

这个还可以实现比如tiezi.xyz跳转到www.tiezi.xyz上,也就是让所有的页面都用带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.tiezi.xyz')//如果域名不是带www的网址那么进行下面的301跳转
{
header('HTTP/1.1 301 Moved Permanently');//发出301头部 
header('Location:https://www.tiezi.xyz'.$the_url);//跳转到带www的网址
}
?>

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

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

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

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

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

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

Responses