PHP使用header+Location实现网站301重定向

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP使用header+Location实现网站301重定向相关的知识,希望对你有一定的参考价值。

转自:http://www.feiyuseo.com/seo-jishu/145.html

对于我们SEO人员来说,有的时候需要对网站进行重定向。一般来说,对网站重定向的http返回状态码是301和302两种。下面兰州SEO就通过实例来为你介绍一下怎样通过php使用header+Location实现网站301重定向。

技术分享

关于PHP网站的定向问题,在百度上面搜索的一中午,发现使用最多的就是使用“header+Location”的重定向方法。下面我给出最流行的代码:

<?php
header("Location: http://www.feiyuseo.com");
exit;
?>

但是通过我对HTTP状态码查询发现,通过以上代码跳转重定向后的返回码是302状态。我们先来看一下什么是302返回码?搜索引擎返回302错误表示被请求的资源暂时转移(Moved temporatily),然后会给出一个转移后的URL,而浏览器在处理服务器返回的302错误时,原则上会重新建立一个TCP连接,然后再取重定向后 的URL的页面;但是如果页面存在于缓存中,则不重新获取。但是,由于黑帽SEO滥用302重定向进行作弊,302重定向已经被视为垃圾信息,遭到各大搜索引擎的打击。因此,上面的代码返回302状态是不完善的,也是存在被百度等搜索引擎K站的风险的。

请看第二种方法:先返回301状态码后再重定向。

<?php
header(‘HTTP/1.1 301 Moved Permanently‘);
header(”Location: http://www.feiyuseo.com”);
exit;
?>

上面的这一段代码可以说是解决了使用Location产生302状态的问题,因此是比较完善的也是比较安全的网站重定向方法。就在准备收工的时候,我又突然发现了一段跳转代码,也是很不错的,比这个更精简,在这里我也为大家附上,一起分享。

<?php
header("Location: http://www.feiyuseo.com",TRUE,301););
exit;
?>

通过上面的这一行代码就实现的网站的301重定向,并且高效、安全、可靠运行。

 

以上是关于PHP使用header+Location实现网站301重定向的主要内容,如果未能解决你的问题,请参考以下文章

php实现返回上一页功能的3种有效方法

尝试使用 PHP Header("Location: ") 函数重定向

PHP中header的作用

如何用 PHP 实现 302 重定向到其他 URL

PHP header的集中用法

在 localhost Linux 上使用 XAMPP 时,如何将 PHP 常量 __DIR__ 与 `header('LOCATION:'.__DIR__.'/file.php');` 一起使用?