利用PHP将域名全部301重定向方法

leixue 设计开发 2014-08-02 21:06:46 阅读(...) 评论(0)

不少站长经历过更换域名的事,但对于一些老站来说,搜索引擎收录了,再换域名,造成了不少的死链,而且新域名的收录也不太理想,最好的方法还是将以前的 301 都转到新域名上去,之前泪雪也遇到过这样的问题,使用 301 重定向的方法其实有很多,但是感觉很多都比较麻烦。

301 redirection method

经过仔细思考,发现了一个可以用同一个空间实现所有链接 301 跳转到新域名上。

首先,我们需要将新旧域名绑定到一个空间上来,绑定好了之后,在伪静态中添加:

1
2
3
4
5
//以下为代码正文…
[ISAPI_Rewrite]
# 301
RewriteCond Host: 老域名
RewriteRule ^(.*)$ /301/index.php?$1

以上代码表示,所有请求上面的域名全部都转到 301 目录下的 index.php 来处理

以下是 index.php 的文件代码:

1
2
3
4
5
6
7
//以下为代码正文…
<?php
$url=$_SERVER['REQUEST_URI']; //获取文件名及参数
$url=str_replace("index.php/","",$url); //过滤掉文件名称,使其得到参数部分
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: 新域名".$url);//转到新的域名,并带有参数
?>

通过以上方法即可以实现任何老域名的参数都会被转到新域名上。

大家可以举一反三,应该还有拓展的方法或途径,泪雪这个方法有看到网上网友谈论才想到的,欢迎大家讨论!

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/php-301-redirection-method.html

发表评论