或者

使用.htaccess来进行301重定向

作者:奋青 浏览:163 发布时间:2017-07-09
分享 评论 0

  先前我们在静态网页如何正确设定301重定向提过各种301永久重定向语法,这次要教大家使用.htaccess来进行301 Redirect。

  如何建立.htaccess?

  首先您的server必须是apache系统,通常您使用PHP空间的话,那就是使用apache。在网页的根目录下,通常可以找到一个.htaccess的档案,若没有则需自已建立一个。由于在Windows中无法建立以点为开头的档案,故我们先建立一个htaccess.txt档,上传至FTP后再修改档名为.htaccess即可。(若上传至FTP后找不到档案,须在FTP软件设定强制显示隐藏档案)

  使用.htaccess来进行301重定向

  htaccess 301重定向语法基础介绍

  在网站根目录建立好.htaccess后,接着用任何notepad软体开启就可以直接写入语法。

  以下为301 redirect的各种运用方式:

  # 进入到您的域名后即301 redirect到其它域名

  Redirect 301 / http://example.com/

  # 进入到old.html后即301 redirect到其它域名的子目录下

  Redirect /old.html http://example.com/newdirectory/

  # 进入旧的网址即301 redirect至新的网址

  Redirect /olddirectory/oldfile.html http://example.com/newdirectory/newfile.html

  htaccess 301重定向的进阶SEO用法

  一般网站都会有网址不一致的情怳,什么是网址不一致?即输入www.domain.com或www.domain.com/index.php或是输入没有www的网址都可进到首页,一般人可能感觉不出有影响,但对搜索引擎来说只要网址不同就是不同页面,因此我们看似差不多的网址,其实搜索引擎并不这么认为。

  所以我们要教大家如何维持网址的一致性,让从index.php进来的或是从没有www进来的统一都用301永久重定向的方式转到www.domain.com

  # 以下两行不可省略

  Options +FollowSymLinks

  RewriteEngine on

  # 将index.php 转到 /

  RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.php\ HTTP/

  RewriteRule ^(.*)index\.php$ /$1 [R=301,L]

  # 将没有www 转到有 www

  RewriteCond %{HTTP_HOST} ^domain.com [NC]

  RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]