.htaccess中301强制跳转到带www前缀或不带www的域名

相信很多站长朋友都遇到过这样的问题,即带www前缀的域名与不带www前缀的顶级域名收录情况是不同的。这个问题主要是由于搜索引擎对于顶级域名与二级域名权重判定不同造成的。
毫无疑问地,唯一的域名能够给你带来更多的好处。不管它是带www还是不带www。因为,这样无论用户还是搜索引擎都会记住你网站的唯一域名。也不会造成权重的分流。
本文中笔者将告诉各位如何在.htaccess 中强制用户或搜索引擎重定向到唯一的域名上。

#强制重定向到www

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

 

#强制重定向到不带www的顶级域名

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

或者

Options +FollowSymlinks

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,NC,L]
或(后面的没测试)
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
或
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC,L]
或
RewriteCond %{HTTP_HOST} ^www.(.*)$ [NC]
RewriteRule (.*) http://%1/$1 [R=301,L]
计算机