IIS重写URL解码规则失败

时间:2015-06-18 08:42:23

标签: asp.net iis url-rewriting

我正在尝试转换结构的网址

http://www.xyxyxh.com/ShowItem.aspx%3FID%3D947 

http://www.xyxyxh.com/ShowItem.aspx?ID=947 

我为IIS 7.5及以上版本编写了以下url重写

<rewrite>
  <rules>
    <rule name="Convert" stopProcessing="true">
      <match url="^ShowItem.aspx/(.+)$" />
      <action type="Redirect" url="?q={UrlDecode:{R:1}}" />
    </rule>
  </rules>
</rewrite>

但规则失败且网址未转换。我哪里错了?

1 个答案:

答案 0 :(得分:0)

如果您检查一些网址解密工具,例如

http://meyerweb.com/eric/tools/dencoder/

并粘贴

http://www.xyxyxh.com/ShowItem.aspx%3FID%3D947

并按解码,你会看到它的

http://www.xyxyxh.com/ShowItem.aspx?ID=947

所以你需要更多的东西,然后简单的url重写,或者你根本不需要它,因为它一样吗?

简单的url重写模块很有用,例如转换

从:

http://localhost/article/342/some-article-title

为:

http://localhost/article.aspx?id=342&title=some-article-title

您可以在此处找到更多详细信息:

http://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module