win2012 r2 + IIS8.5 +url重写模块2.0

1、安装 Url Rewrite 2.0 https://www.microsoft.com/zh-cn/download/details.aspx?id=7435
下载后双击,安装即可在“IIS管理器”中找到 “URL重写”图标。

2、双击“URL重写”,有.htacess或 httpd.ini(需要选择所有文件类型) 文件的可以点击右侧“导入规则”,导入后会在web.config中自动添加规则。没有的可以直接“添加规则”

导入httpd.ini,会提示异常,需要去掉[N,I] 、[F,I,O] 等,只保留 RewriteRule 后面的规则,旧规则中的 “/”开头 ,需要改为“^”开头,否则会有404错误,如
RewriteRule /News/search\?k=([^\.]+) /news/search\.aspx?k=$1。注:?k=([^\.]+)这里在浏览器里访问会失效,先保留,后面会处理

其中 /News/search\?k=([^\.]+) 需要改为 ^News/search?k=([^\.]+)$


3、解决URL重写参数带“\?”的问题——双击带?号的规则,进入编辑窗口

—— 去掉“\?”及起后面的文字。如:/News/search-p([0-9]+)\?k=([^\.]+)  ——^News/search-p([0-9]+)$

—— 下拉找到“条件”,“添加条件”:
条件输入:{QUERY_STRING}
检查输入字符串师傅:与模式匹配
模式:k=([^\.]+])


——下拉找到“操作”:
去掉:&k={R:2}
勾选:附加查询字符串

4、点击右侧“应用”,重启站点即可。

也可以直接修改web.config,注 $ 结尾,否则多个参数时,有可能无法获得参数

<?xml version=”1.0″ encoding=”utf-8″?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=”11″>
<match url=”^News/search-p([0-9]+)$” ignoreCase=”true” />
<action type=”Rewrite” url=”/news/search.aspx?page={R:1}” appendQueryString=”true” />
<conditions>
<add input=”{QUERY_STRING}” pattern=”k=([^\.]+)$” />
</conditions>
</rule>
<rule name=”12″>
<match url=”^News/search$” ignoreCase=”true” />
<action type=”Rewrite” url=”/news/search.aspx” appendQueryString=”true” />
<conditions>
<add input=”{QUERY_STRING}” pattern=”k=([^\.]+)$” />
</conditions>
</rule>
<rule name=”13″>
<match url=”^News/list([0-9]+)-p([0-9]+)$” ignoreCase=”true” />
<action type=”Rewrite” url=”News/list.aspx?c={R:1}&amp;page={R:2}” appendQueryString=”false” />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

———————

免责声明: 本站所有源码都来源于网络收集修改或者交换,只做学习和交流使用,版权归原作者所有,若为付费资源,请在下载后24小时之内自觉删除,若作商业用途,请到原网站购买,由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容如果侵犯了您的权益,请及时告知我们,我们即刻处理!本站联系邮箱:waxcu6@163.com
吉素材 » win2012 r2 + IIS8.5 +url重写模块2.0

提供最优质的资源集合

立即查看 了解详情