欢迎登陆真网站,您的到来是我们的荣幸。 登陆 注册 忘记密码? ☆设为首页 △加入收藏
欢迎加入真幸福QQ群
电脑知识: 基础知识 网络技术 操作系统 办公软件 电脑维修 电脑安全 windows7 windows8 windows10 服务器教程 平板电脑 视频播放教程 网络应用 互联网 工具软件 浏览器教程 QQ技巧 输入法教程 影视制作 YY教程 wps教程 word教程 Excel教程 PowerPoint
云南西双版纳特产小花糯玉米真空包装


linux中文文件名乱码
如何让Win7系统笔记本任务栏图标居中显示
win764位旗舰版批量修改照片名
win7系统卸后启动菜单怎样删除
win7自动关机原因有哪些
memcached怎么安装和使用?
Linux/MAC服务管理
Linux下压缩/解压方法大全
格式工厂使用教程
win7系统电脑内录声音该怎么设置技巧
ISAPI_Rewrite 各版本301转向大全
【 来源:网络 】【 点击:1 】 【 发布时间:2017_03_03 08:59:59 】

   终于下定决心放弃之前启用的二级域名,改回子目录格式。经测试改回子目录后,百度收录加快一天收录多次,现在准备把之前的二级域名(google/soso都收录了好几万页)301重定向到子目录下。使用IIS下301转向方法,但问题出现了,发现收录的部分伪静态的页面无法正确重定向,全部重定向首页。

  IIS 做伪静态采用的是ISAPI_Rewrite 插件,大家知道ISAPI_Rewrite 不仅可以实现url 重写,还可以用来设置301转向(2.x以上才支持,1.3版本仅支持302转向),下面介绍ISAPI Rewrite做301重定向的方法:

  1. 将不带www的顶级域名301重定向到带www的域名

  # ISAPI_Rewrite 2.x 版本

  [ISAPI_Rewrite]

  # 3600 = 1 hour

  CacheClockRate 3600

  RepeatLimit 32

  RewriteCond Host: ^downcc.com$

  RewriteRule (.*) http://www.downcc.com$1 [I,RP]

  # ISAPI_Rewrite 3.0 版本

  [ISAPI_Rewrite]

  # 3600 = 1 hour

  CacheClockRate 3600

  RepeatLimit 32

  RewriteCond %{HTTP:Host} ^downcc.com$

  RewriteRule (.*) http://www.downcc.com$1 [NC,R=301]

  2. 不同域名之间的301转向

  # ISAPI_Rewrite 2.x 版本

  [ISAPI_Rewrite]

  # 3600 = 1 hour

  CacheClockRate 3600

  RepeatLimit 32

  RewriteCond %{HTTP:Host} ^downcc.cn$

  RewriteRule (.*) http://www.downcc.com$1 [NC,R=301]

  # ISAPI_Rewrite 3.0 版本

  [ISAPI_Rewrite]

  # 3600 = 1 hour

  CacheClockRate 3600

  RepeatLimit 32

  RewriteCond %{HTTP:Host} ^www.downcc.cn$

  RewriteRule (.*) http://www.downcc.com$1 [NC,R=301]

  3. 将页面301重定向到另外一个页面

  # ISAPI_Rewrite 2.x 版本

  [ISAPI_Rewrite]

  # 3600 = 1 hour

  CacheClockRate 3600

  RepeatLimit 32

  RewriteRule ^/oldpage.html$ http://downcc.com/dll.html[I,O,RP,L]

  # ISAPI_Rewrite 3.0 版本

  [ISAPI_Rewrite]

  # 3600 = 1 hour

  CacheClockRate 3600

  RepeatLimit 32

  RewriteRule ^/oldpage.html$ http://downcc.com/dll.html[NC,L,R=301,O]

  注意:ISAPI_Rewrite 1.3是现在国内应用得比较多的一个老版本,它可用于url 重写,但并不适合用来实现真正的301重定向功能。建议下载最新的ISAPI_Rewrite 3.0 版本。ISAPI_Rewrite 1.3 的在IIS下对域名重定向虽然能够顺利跳转,但是返回的仍然是302 HTTP header,而不是301 状态码。而且该段代码用于301重定向后,在子目录中的其他页面都会跳转到首页。

  这样设置以后,你的windows iis 也能实现301重定向了,不管是Google 和百度搜索引擎都不会有因为带有www和不带www 的域名而产生重复页面问题了。

  301重定向在线检测工具:http://www.itmop.com/tool/getheader.php

  附:ISAPI_Rewrite语法规则

  ISAPI_Rewrite 规则对大小写敏感,但可以忽略大小写了。

  I (ignore case)不管大小写强行指定字符匹配。

  例:RewriteRule /code/project/([0-9,a-z]*).html /soft.jsp?softpy=$1 [I]

  其他的参数一览

  I (ignore case)

  不管大小写强行指定字符匹配,这个FLAG影响RewriteRule指令和相应的RewriteCond 指令。

  F (Forbidden)

  对客户端做反应,停止REWRITING进程并且发送403错误,注意在这种情况下FORMATSTRING 是无用的并可以设置为任何非空字符串。

  L (last rule)

  不应用任何重写规则在此停止重写进程,使用这个FLAG以阻止当前被重写的URI被后面的规则再次重写。

  N (Next iteration)

  强制REWRITINGENGINE调整规则目标并且从头重启规则检查(所有修改将保存),重启次数由RepeatLimit指定的值限制,如果这个数值超过N FLAG将被忽略。

  NS (Next iteration of the same rule)

  以N标记工作不从相同的规则重启规则规则进程(例如强制重复规则应用),通过RepeatLimit指令指定一个反复实行某一规则的最大数目。

  P (force proxy)

  强制目的URI在内部强制为代理需求并且立即通过ISAPI扩展应付代理需求,必须确认代理字符串是一个有效的URI包括协议 主机等等否则代理将返回错误。

  R (explicit redirect)

  强制服务器对客户端发出重定向指示即时应答,提供目的URI的新地址,重定向规则经常是最后规则。

  RP (permanent redirect)

  几乎和[R]标记相同但是发布301HTTP状态而不是302HTTP状态代码。

  U (Unmangle Log)

  当URI是源需求而不是重写需求时记载URI。

  O (nOrmalize)

  在实行之前标准化字符串。标准化包括URL-ENCODING,不合法的字符的再移动等,这个标记对于URLS和URLS-ENDODED头是有用的。

  CL (Case Lower)

  小写。

  CU (Case Upper)

  大写。

  RewriteHeader directive

  Syntax: RewriteHeader HeaderName Pattern FormatString [Flags]

  这个指令是RewriteRule的更概括化变种,它不仅重写URL的客户端需求部分,而且重写HTTP头,这个指令不仅用于重写。生成,删除任何HTTP头,甚至改变客户端请求的方法。

  HeaderName

  指定将被重写的客户头,可取的值与 RewriteCond 指令中TestVerb参数相同。

  Pattern

  限定规则表达式以匹配Request-URI。

  FormatString

  限定将生成新的URI的FormatString 。

  [Flags]

  是一个下列FLAGS的命令分隔列表。

  I (ignore case)

  不管大小写强行指定字符匹配,这个FLAG影响RewriteRule指令和相应的RewriteCond 指令。

  F (Forbidden)

  对客户端做反应,停止REWRITING进程并且发送403错误,注意在这种情况下FORMATSTRING 是无用的并可以设置为任何非空字符串。

  L (last rule)

  不应用任何重写规则在此停止重写进程,使用这个FLAG以阻止当前被重写的URI被后面的规则再次重写。

  N (Next iteration)

  强制REWRITINGENGINE调整规则目标并且从头重启规则检查(所有修改将保存),重启次数由RepeatLimit指定的值限制,如果这个数值超过N FLAG将被忽略。

  NS (Next iteration of the same rule)

  以N标记工作不从相同的规则重启规则规则进程(例如强制重复规则应用),通过RepeatLimit指令指定一个反复实行某一规则的最大数目。

  R (explicit redirect)

  强制服务器对客户端发出重定向指示即时应答,提供目的URI的新地址,重定向规则经常是最后规则。

  RP (permanent redirect)

  几乎和[R]标记相同但是发布301HTTP状态而不是302HTTP状态代码。

  U (Unmangle Log)

  当URI是源需求而不是重写需求时记载URI。

  O (nOrmalize)

  在实行之前标准化字符串。标准化包括URL-ENCODING,不合法的字符的再移动等,这个标记对于URLS和URLS-ENDODED头是有用的。

  CL (Case Lower)

  小写。

  CU (Case Upper)

  大写。

本网站由川南居提供技术支持,fkzxf版权所有 浙ICP备12031891号
淳安分站 淳安分站