时间:2017-09-27 点击: 次 来源:网络 作者:佚名 - 小 + 大
一、什么是301重定向? 301重定向也叫301转向,或者301跳转,是用户向web服务器发出访问请求时,服务器返回的HTTP数据流中头信息状态码的一种,表示本URL地址永久性的转移到另一个URL地址。 二、为什么要用301重定向? 1、传递权重,避免重复惩罚: 其一,假设xxx.com和www.xxx.com都可以访问到同一个页面,搜索引擎会判定相同的页面为相似页面,就会删除其一并惩罚; 其二,多一半相似页面,页面权重会被分割分散降低; 其三,设置网站唯一入口,提升权重。 2、多个域名转向到一个域名下,可以避免大量重复 比如: xxx.org 、 xxx.net 、 xxx.com.cn、 xxx.cn 都可以使用301重定向到xxx.com这个主域名下 3、网站改版导致URL改变,可以使用301重定向到新URL下 4、动态URL静态化 三、如何在IIS下实现301重定向? 在IIS的Isapi上安装ISAPI_Rewrite筛选器 筛选器名称:Rewrite 可执行文件: Rewrite.dll 配置文件:httpd.ini 配置方法:修改httpd.ini,在其中定义301重定向规则。 示例1:以xxx.com开头的URL地址 转向到 以www.xxx.com开头的URL
示例2:不同域名之间的301转向(以下1.x版本略)
示例3:网站改版,将旧页面301重定向到另外一个页面,目录一样
注意:ISAPI_Rewrite 1.3是现在国内应用得比较多的一个老版本,它可用于url 重写,但并不适合用来实现真正的301重定向功能。建议下载最新的ISAPI_Rewrite 3.0 版本。在1.x版本 url转发和301转向(重定向跳转)的实现那段代码在IIS下对域名重定向虽然能够顺利跳转,但是返回的仍然是302 HTTP header,而不是301 状态码。而且该段代码用于301重定向后,在blog中的其他页面都会跳转到首页。 这样设置以后,你的windows iis 也能实现301重定向了,不管是Google 和百度搜索引擎都不会有因为带有www和不带www的域名而产生重复页面问题了。 四、如何在Apache下实现301重定向? 方法一:修改.htaccess,在其中增加301重定向指令(采用“mod_rewrite”技术)
方法二:修改.htaccess,在其中修改301重定向规则 找到下面这句,修改即可 Redirect permanent / http://xxx.com/ (将目录下内容重定向到http://xxx.com/) redirect permanent /old.html http://xxx.com/new-url/ (将网页old.html内容重定向到http://xxx.com/new-url/) 通过合理地配置重定向参数中的正则表达式,可以实现更复杂的匹配。有兴趣的朋友可参考Apache手册。 |