重定向和永久重定向

对于许多站点而言,以域名365mini.com为例:用户在浏览器中输入网址http://www.365mini.com/或者http://www.365mini.com/index.php,实际上访问的都是本站的首页;用户在浏览器中输入网址http://www.365mini.com/或者http://365mini.com/,访问的依然都是本站的首页。

此外,在某些情况下,我们可能需要将站点中的某个文件移动到一个新的位置或更改该文件的名称。此时,用户可能仍然会输入以前收藏的网址来访问该网页文件,因此,我们需要尽量保证以前的网址和新的网址都能够访问到最新的网页内容。

但是,对于搜索引擎而言,两个路径不同的网址,又没有其他特别的说明,则会被搜索引擎认为这是两个独立的页面,从而进行分别收录。不过,由于两个页面的内容雷同,搜索引擎可能会对上述网址进行降权处理,从而影响SEO的效果。

为了避免给网站的SEO造成不良影响,也为了给用户带来良好的访问体验,我们应该采用一些特别说明来告诉搜索引擎——“它们实际上是同一个页面”。当然,不仅仅是为了SEO,对于一个优秀的站点而言,每一个网页也都应该对应一个唯一的网址。

在这里,我们就需要使用“特别说明”来告诉浏览器或者搜索引擎,“旧的网址和新的网址实际上是同一个网页,建议浏览器或搜索引擎使用新的网址来访问该网页”,这里的“特别说明”就是HTTP重定向。HTTP重定向,简言之,就是当用户浏览器或搜索引擎访问某个旧的网址时,服务器告诉浏览器或搜索引擎,“该网页已经搬家了,新家的地址是……,请使用新地址来访问该网页”。例如,当用户访问网址http://www.365mini.com/index.php时,服务器将告诉浏览器,这个页面应该重定向到http://www.365mini.com/。此时,浏览器或者搜索引擎就会自动跳转到新的网址从而访问网页内容。

HTTP重定向又分为永久重定向(HTTP状态码为301)和临时重定向(HTTP状态码为302)

永久重定向就表示该网址已经搬迁到一个永久居住的“新家”,临时重定向就表示该网址搬迁到了一个临时居住的“公寓

<?php
//302临时重定向
$new_url = 'http://www.365mini.com/';
header("Location:$new_url"); 
?>

<?php
//301永久重定向

$http_protocol = $_SERVER['SERVER_PROTOCOL'];   //http协议版本

//如果是其他协议,则默认为HTTP/1.0
if ( 'HTTP/1.1' != $http_protocol && 'HTTP/1.0' != $http_protocol )
    $http_protocol = 'HTTP/1.0';

?>
//响应301状态码
header("$http_protocol 301 Moved Permanently");

//指定重定向的URL
$new_url = 'http://www.365mini.com/';
header("Location:$new_url"); 

转载于:https://my.oschina.net/u/2299514/blog/794117

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值