建站经验 experience
当前位置:首页 > 网站建设专题 > 建站经验
Wordpress简单301重定向的两种方法
发布日期:2011-05-31 阅读次数:1177 字体大小:

昨天晚上给我的博客做了个301重定向,其实网上的方法很多,不过我还是想把我自己的亲身实践分享给大家。因为之前我给博客绑定了两个域名分别是:www#bluefate#org这个是新注册的,因为平时我用的网名是BLUEFATE,积累了一定的知名度,但是COM域名被人N年前都注册了,所以只有注册个org的域名,呵呵,其实ORG的域名对搜索引擎权重还是相对较高的,只不过大家更喜欢com罢了。

另一个域名就是www#vxage#com这个域名注册快一年了吧,之前没事的时候,给他做了一些外链,现在雅虎反链两千多呢,不信你可以去看看哦,不管是域名年龄还是外链考虑,我想他的权重应该还可以吧,不过我想在不想拿这个域名做博客,所以就把它给301定向了。

但是对windows平台的那个空间,好像没法做301呢,除非找空间商给你搞定,但是我又不想那样,很多时候你说了,别人还不愿意给你搞。所以我就想着从程序这块入手去搞定。我用的是wordpress博客程序,这套程序对SEO来说还是蛮不错的。我相信大家平时也会遇到这样的问题,特别是将不带www的域名定向到www的域名,因为之前我也接触过PHP的,所以做起来还是比较顺手的。

1.比较简单的域名301重定向:即将A定向到B

$the_host = $_SERVER'HTTP_HOST';//取得当前域名

if($the_host != 'www.bluefate.org')//判断获取的这个域名是不是你想要的(即定向后的域名)

{

header("HTTP/1.1 301 Moved Permanently");//发出301头部

header("Location: http://www.bluefate.org");//跳转到你希望的域名

exit();

}

将上面的代码放入到根目录的index.php的<?php?>最开始的地方就行了,实现的效果是原域名下的所有地址都将转跳到新域名的首页。

2.另一种比较麻烦一点,不过效果会好一点:

他可以将原域名下的所有链接地址定向到对应新域名的地址,即:域名变化,但是参数不变的。代码如下:

$the_host = $_SERVER'HTTP_HOST';//取得当前域名

if(strtolower($the_host) != 'www.bluefate.org')//把这里的域名换上你想要的

{ $URIRedirect=$_SERVER'REQUEST_URI'; //获取域名后的参数

if(strtolower($URIRedirect)=="/index.php")//判断是参数为/index.php就显示为/

{

$URIRedirect="/";

}

header("HTTP/1.1 301 Moved Permanently");//发出301头部

header("Location: http://www.bluefate.org".$URIRedirect);//跳转到你希望的地址格式

exit();

}

以上两种方法,不仅适合wordpress的程序,一般PHP程序都可以使用的。写到这里其实我的博客的301已经做好了,我用的是第二种。下面的一种方法,有兴趣的也可以研究一下啦。

在linux并且支持rewrite就可以通过.htaccess来设置了,代码如下:

# BEGIN WordPress

<IfModule mod_rewrite.c>

Options +FollowSymLinks

RewriteEngine on

rewritecond %{http_host} ^www.a.comnc

rewriterule ^(.*)$ http://www.b.com/$1 L,R=301

</IfModule>

# END

哈哈,是不是很简单啊,其实网上这些方法很多的,只要你懂一点代码,就很简单啦。好了,希望这些能帮到你,如果有更好的方法,大家也可以共享一下,相互学习,谢谢。最后曝光一下我的小站亚太橱柜网www.ytcg360.com,欢迎转载,转载请注明出处。谢谢啦。

感谢 BlueFate 的投稿