apache环境利用.htaccess文件实现301重定向

时间: 2012-11-06 / 分类: 建站心得 / 被围观: 5,757 次 / 6个评论 发表评论

出于SEO、PR值传递、网址转换的目的,在网站初建和网站迁移时我们都需要使用301重定向,通常包括域名对域名,目录对目录和一个独立网址对另一个独立网址的重定向。

注意:在设置301重定向之前务必备份相应目录下的.htaccess文件。
1.重定向domain.com到www.domain.com
这种重定向旨在使域名唯一,是网站SEO必须要做的,后面重定向www.domain.com到domain.com也是出于同样的原因,只是形式不同。
打开.htaccess文件,加入以下规则。(下面的规则是针对主域名的,子域名要修改)

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

2.重定向www.domain.com到domain.com

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

3.重定向olddomain.com到www.newdomain.com

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

4.重定向olddomain.com to newdomain.com

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

5.重定向domain.com/file/file.php 到 otherdomain.com/otherfile/other.php

1
2
RewriteCond %{HTTP_HOST} ^www.domain.com$
RewriteRule ^file/file.php$ http://www.otherdomain.com/otherfile/other.php [R=301,L]

6个评论

  1. 火车票价格查询
    2012/11/07 19:18:22

    分析的很透彻,很欣赏你的看法,学习了。

  2. 电视棒软件免费下载
    2012/11/12 09:23:27

    有道理。很受启发。

  3. 那时年少
    2012/11/16 19:18:53

    自己平时都很少关注这个的

    • spendl
      2012/11/20 21:29:03

      这个我也是需要单页面301的时候在网上找的,搞下来做个记号,不用经常去网上找,哈哈~

  4. Young Free!
    2012/11/18 16:42:01

    我用的Nginx的VPS了,这个用不着了……
    可不可以介绍下Nginx的规则?

    • spendl
      2012/11/20 21:29:25

      呵呵,我用的是2003~~

既然来到那就留点东西吧,我要发表评论让你的评论也可以自定义头像

您的昵称 *

您的邮箱 * (放心,俺会帮你保密滴!)

您的网站