Linux虚拟主机设置域名301跳转的方法
在我们网站建设中,时常会遇到需要网页重定向的情况:像网站调整,改变了网站的目录结构,网页被移到一个新地址。或者网页扩展名改变,如因应用需要把.php改成.Html或.shtml,在这些情况下,如果不做重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户得到一个404页面错误信息,访问流量白白丧失。又比如某些注册了多个域名的网站,也需要通过重定向让访问这些域名的用户自动跳转到主站点等等。
方法:在本地新建一个文本文件,最好用的专业的编辑器软件如EditPlus 将代码粘入
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.wendabaike.com$ [NC]
RewriteRule ^(.*)$ http://www.wendabaike.com/$1 [R=301,L]
</IfModule>
说明:上述规则是将站点所有访问域名都重定向到www.wendabaike.com(规则中的域名请修改为自己的域名),如果仅想将绑定在站点上某个域名(如:www.123.com)重定向到www.wendabaike.com,规则如下:
RewriteCond %{HTTP_HOST} ^www.123.com$ [NC]
RewriteRule ^(.*)$ https://m.wendabaike.com/$1 [R=301,L]
如果有多种需求,如wendabaike.com跳转到www.wendabaike.com 333ku.com跳转到www.333ku.com,规则如下:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^wendabaike.com$ [NC]
RewriteRule ^(.*)$ https://www.wendabaike.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^333ku.com$ [NC]
RewriteRule ^(.*)$ http://www.333ku.com/$1 [R=301,L]
</IfModule>
根据自己的需要进行添加修改,然后上传到服务器wwwroot目录,改名为.htaccess即可。
页面永久性移走(301重定向)是一种非常重要的“自动转向”技术。网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址,对提高网站权重有一定的帮助。