php 301转向实现代码

yipeiwu_com6年前PHP代码库
301转向定义
301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
其它常见的状态码还包括,200表示一切正常,404网页找不到,302暂时转向,等等。
网站做转向的方法
网址转向方法主要包括:301转向,302转向,JavaScript转向,PHP/ASP/CGI转向,META REFRESH网页META刷新,等。302转向可能会有URL规范化问题。其它方法都是常用的作弊手法,当然不是说不可以正当地用,方法本身没有错,但被作弊者用多了,搜索引擎对这些可疑的转向都很敏感。何必冒险呢。
301转向的必要性
当网页A用301重定向转到网页B时,搜索引擎可以肯定网页A永久的改变位置,或者说实际上不存在了,搜索引擎就会把网页B当作唯一有效目标。好处是,
第一,没有网址规范化问题
第二,也很重要的,网页A的PR网页级别会传到网页B
第三,收录不会因为域名更换没有.
实现
复制代码 代码如下:

<?php
$url="http://www.php-oa.com".$_SERVER["REQUEST_URI"];
header("HTTP/1.1 301 Moved Permanently");
header ("Location:$url");
?>

如图上面的php代码。就可以实现这个功能.那上面的代码要放到什么地方啦。我们以Discuz6.0为例子
index.php
archiver/index.php
forumdisplay.php
viewthread.php
space.php
tag.php
blog.php
找到原来的老的域名中的上列文件,加入上面的代码。更新就好了。
测试
容易吧.要测试就用curl这个小软件来检查.
#curl -I http://www.bbbb.com/sssss.php
HTTP/1.0 301 Moved Permanently
Date: Tue, 06 May 2008 06:27:39 GMT
Server: apache
Location: //www.jb51.net/sssss.php
如见到上面的HTTP/1.0 301 Moved Permanently时,就表示可以了.下次只要点相关的链接,会自动转向新的链接,搜索引擎也会自动更新成新的链接

相关文章

php输出echo、print、print_r、printf、sprintf、var_dump的区别比较

用.net开发已经5年了,最近突然想接触一下。net以外的东西,于是乎就来看看php了。在学习php中首先看看几个输出函数。一、echoecho() 实际上不是一个函数,是php语句,因...

php下使用SMTP发邮件的代码

最近一个项目需要用到SMTP发送邮件,之前的库类不存在了,又不喜欢安装pear或者使用pear的net/smtp类,感觉太复杂了。就直接从discuz中抽取出核心稍微修改了下。 &nbs...

PHP获取数组的键与值方法小结

本文实例讲述了PHP获取数组的键与值方法。分享给大家供大家参考。具体如下: 使用数组的过程中经常要遍历数组。通常需要遍历数组并获得各个键或值(或者同时获得键和值),所以毫不奇怪,PHP为...

PHP htmlspecialchars_decode()函数用法讲解

PHP htmlspecialchars_decode()函数用法讲解

PHP htmlspecialchars_decode() 函数 实例 把预定义的 HTML 实体 "<"(小于)和 ">"(大于)转换为字符: <?php...

PHP计划任务、定时执行任务的实现代码

不知道能程序的性能会不会影响很大! 复制代码 代码如下: ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行. set_time_limit(0);// 通...