<<<<<<< .mine =======
当前位置: 首页 > SEO > Linux下多域名的整站301跳转设置

Linux下多域名的整站301跳转设置

时间:2011-12-28 20:55:49
在linux系统中,大家可能都设置过不带www的301跳转方法,例如在httpd.conf或者.htaccess中,代码是这样的:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]

但是碰到有多个域名同时设置成整站301跳转到一个主域名时,该如何做呢?

笔者以前没做过,今天在搬迁一客户的网站时,由于是需要做多个域名的整站301,所以还是在网上查找了一下相关设置方法,终于找到了解决方案。是这样的,如果你拥有多个辅助的域名b.com和c.com,从SEO的角度,需要做整站301跳转,那么在Linux下,文件httpd.conf或者.htaccess文件中,你就可以写成:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^b.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.b.com [NC,OR]
RewriteCond %{HTTP_HOST} ^c.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.c.com [NC,OR]
RewriteCond %{HTTP_HOST} ^a.com [NC]
RewriteRule ^(.*)$ http://www.a.com/$1 [L,R=301]

就是多个域名,可以在NC后面加个OR设置,直到最后一个,中括号中相关字母代表的意思是:

1) R[=code](force redirect) 表示强制外部重定向,强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。
2) L(last rule) 表明当前规则是最后一条规则,停止分析以后规则的重写。
3) NC(no case) 不区分大小写

而经过笔者多次测试后,也发现了一个有趣的现象,即采用重写语句RewriteRule ^(.*)$ http://www.a.com/$1 [L,R=301]后,某个url例如a.com/news/1.html会被跳转成www.a.com//news/1.html,多了一个斜杠,故经过优化后,采用重写语句RewriteRule ^(.*)$ http://www.a.com$1 [L,R=301]比较好,就不会多出那个斜杠来了。

301跳转

相关文章

网站IIS数据定义(一)

看到M总写了很长串的新人学习博文,这边也效仿下,把一些SEO的基本知识一一的整理下,上一篇的“robots.txt文件揭...

挖掘长尾关键词要注意:搜索引擎正在扼杀长尾关键词

如果你是一个搜索引擎优化工程师,肯定知道挖掘长尾关键词是做好搜索引擎优化最重要的步骤,也是最有价值的步骤。一个好的长尾关...

探讨新浪腾讯搜狐微博开心网sns与搜索引擎的社会原理

今天,你随便搜索一个老朋友的人名(涛哥除外),你会发现排名前几位的很多是新浪微博、腾讯微博、搜狐微博、开心网等,于是很多...

万网翔云I型云主机试用手记

由于客户网站的需要,我们租了一台万网的云主机,型号是翔云I型: 万网声称,采用云主机,有几个好处,升级方便...

seo.chinaz综合查询替代了seowhy的位置引发的思考

最近,在百度输入SEO这个关键词的时候,排名有了新的变化,原先排名前两位的一般就是百度百科和seowhy,而且s...
沪ICP备10034044号-12
400-685-0732
400-685-0732 在线咨询