冰雨 2008-7-30 17:55
【301跳转】如何实现两个域名内页之间的301跳转
问题:
0s Y(M @)P:Pn$QA
如果一个网站拥有两个域名:domain1.com和domain2.com。
]#^Gfz;Y
Yg
xWo7\)K4mGH
在网站运营前期,主推domain1.com,但发展到中期,由于品牌或产品定位的原因,domain1.com这个域名不再适合当前情况,要更换成domain2.com。tD+G2}'B$N
L
M"IB\+eBg
作为SEO,我们肯定推荐使用301跳转,当用户访问domain1.com时,自动引导用户进入新域名domain2.com,可以通过程序或域名跳转实现301跳转,这样可以将旧域名PR传递到新域名。
-T6OY:T'os7]eo
k*Bf"J/Go8v#`
但是如果用户收藏了旧域名的某个内容页(譬如:domain1.com/content/20070808.html),通过域名跳转直接引导到domain2.com首页恐怕会产生较差用户体验,特别是对未及时获知域名更换的用户;最好方式是实现通配,动态的将旧域名某个内页跳转到新域名相同页面的URL,那如何用技术手段实现新旧内页URL之间的301跳转???
~az XY*|
V'r knnt7^d^Wa,?P
即:从domain1.com/content/20070808.html跳转到domain2.com/content/20070808.html,并使浏览器返回301代码O@5\X#jT[t
C'r+C$c%V){1q+}icl
例如:
8~p;L` S-z)Q"a
大旗网域名由chinabbs.com换成daqi.com
:D.w#ESQ$rG#T"~Ar
博客网域名由blogchina.com换成bokee.com
冰雨 2008-7-30 17:56
.htaccess文件代码如下(bloghuman.com的.htaccess如此设置):y
YMH*U"_Z
bXU3nN'F r8g
Options +FollowSymlinks
4}}bwP%O"\[:H8b
RewriteEngine on
uPe4V0C:y+bf4[
rewritecond %{http_host} ^bloghuman.com [nc]DfbQ g
rewriterule ^(.*)$ [url]http://www.bloghuman.com/[/url]$1 [r=301,nc]&OV*p$rf+~(x([
e6kA"DR"Q.Q
(\\~SH^
注释1:如果用户访问[url]http://bloghuman.com/[/url],则跳转至[url]http://www.bloghuman.com[/url],且返回 301状态码;当用户访问[url]http://bloghuman.com/post/301.htm[/url],则跳转至http: //www.bloghuman.com/post/301.htm,并返回301状态码。
^/xI@q,v4\@
g
f^P5_+h
N
注释2:测试URL:[url]http://www.wlxs.com.cn/[/url],你可以访问[url]http://www.wlxs.com.cn/post/301.htm[/url]RB9SI~F.tT6d
我在wlxs.com.cn下配置了.htaccess文件,使其301跳转至[url]http://www.bloghuman.com/post/301.htm[/url]
A-h2[5qyj*P
a1R
(Zf&vG"G
我的.htaccess配置实现了由主域名(bloghuman.com)301跳转至二级域名([url]www.bloghuman.com[/url]);S~o6e U0dZ
Jk
}(r/B3\t6o8n
结论:
Lj}4l#VL T;[
Options +FollowSymlinks
1fR7s} ~@9[R
RewriteEngine on
7@wTEo$B]PL&T
rewritecond %{http_host} ^[url]www.domain1.com[/url] [nc]