或者

如何正确301重定向

作者:dongky 浏览:2370 发布时间:2015-04-30
编辑 分享 评论 0


    301重定向是什么意思?
    在地址栏里输入:域名 XXXX.com 可以看到自动跳转到 www.xxxxx.com 这样的效果就是301重定向。相反过来也是一样的。
    为什么要做301重定向?
    一、为了网址URL的标准化
    1,我们经常遇到的就是带www的域名和不带www的域名301重定向问题。在未做301重定向之前,无论是用户或搜索引擎蜘蛛,通过这两个网址是都能访 问网 站的同一个页面。对于用户可能不太在意,因为无论用哪个网址都能访问。但是对于搜索引擎来说就是2个不同的URL,意味着2个页面的权重就要分别计算了, 最终结果就是网站权重的分散。那么从SEO的角度分析,镜像页面的存在危害也很大。
   二、网站启用了新域名
    由于某些原因网站启用了新域名,老域名这时候也需要301重定向到新的域名。这样可以告诉搜索引擎网址启用了新的网址或者是用户访问原来的网址不至于打不 开而损失了流量。我们还关心的一个问题就是老域名的权重是否能传递?权重的传递是需要一个过程的,一般谷歌的反应比百度迅速。至于权重是否能够完全传递保 定SEO认为是不会的。至少我还没有看到关于301重定向能够完全传递权重这一说法的有效案例。
   
   三、网站内部结构的调整
    SEO站内优化中涉及到目录结构的优化,有些目录网址需要进行301重定向。还有内部一些错误的页面也可以做301重定向,提高用户体验。
    下面介绍301重定向的方法!
    1、linux的虚拟主机Apache的服务器,需要支持.htaccess 这个文件。(咨询主机商是否支持)如果支持,则先2个域名都解析到同一个IP,然后在.htaccess文件开始处加入一下规则:
代码:
RewriteCond %{http_host} ^hongtaoseo.com [NC]
RewriteRule ^(.*)$ http://www.hongtaoseo.com/$1 [R=301,L]
    须注意的就是:.htaccess这个文件基本在传到本地是不能直接被修改的,我们可以采用修改成.htaccess.txt的形式来进行访问编辑,把要 写的代码写好之后,直接把.htaccess.txt传上空间,再把.htaccess.txt直接用FTP修改成.htaccess文件名,这样就可以 升效啦!
    2、window的虚拟主机IIS的服务器,需要有安装 ISAPI_Rewrite这个组件。(咨询主机商是否支持)如果支持,则先2个域名都解析到同一个IP,然后httpd.ini文件开始处加入以下规则:
代码:
RewriteCond Host: ^XXXXX\.com$
RewriteRule (.*) http\://www\.XXXXX.COM\.com$1 [R,I]
    如果采用以上代码不可行,请你尝试下这个代码:
代码:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond Host: ^XXXX\.com$
RewriteRule (.*) http\://www\.XXXX\.com$1 [I,RP]
    3.IIS服务器下设置301重定向的方法,适用于使用Window网络服务器的用户,以http://xxx.com/指向到http://www.xxx.com/为例
    首先新建一个站点,对应目录如D:\wwwroot\301web。添加一个index.html文件和404.html文件,然后绑定要301跳转的域名http://xxx.com
    4.在IIS中选择刚才我们建立的站点,右键,属性,主目录,选择重定向到,输入网址如:http://www.xxx.com/,并选择永久重定向选项,就可以了。
    asp 301重定向的方法:可以在在 default.asp或index.asp 文件 的最顶部添加代码
<%Response.Status="301 Moved Permanently"Response.AddHeader "Location","http://www.XXX.com/"Response.End%>
    php 301重定向的方法:可以在index.php 文件的顶部添加代码<?php$the_host = $_SERVER['HTTP_HOST'];//取得当前域名   $request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';//判断地址后面是否有参数   if($the_host != 'www.XXX.com')//跳转到指向的地址  {      header('HTTP/1.1 301 Moved Permanently');//发出301头部      header('Location: http://www.XXX.com/'.$request_uri);//该指向地址的的格式}?>
    4.通过301重定向插件进行设置
    wordpress强大的插件功能,比如301重定向插件slredirectplugin,安装后在后台进行相应的设置就可以搞定301重定向了。WP的301重定向就这么简单!
    为了避免出现错误可以把.htaccess文件备份一份哦!
    通过以上的几种方法我们进行301重定向的设置,但是成功与否还要进行检测。首先我们可以借助检测工具,通过返回的Http状态码来判断是否成功。返回的状态码是301表示设置成功。

词条统计

  • 浏览次数:2370
  • 编辑次数:0次历史版本
  • 最近更新:2015-04-30
  • 创建者:dongky
  • 相关词条

    相关问答

    相关百科

    相关资讯