301在webconfig中将asp重定向到aspx - 否定某些具有查询字符串的页面

时间:2018-02-25 06:13:12

标签: asp.net redirect iis web-config

我的web.config文件中有一个重定向规则,它将所有.asp页面重定向到.aspx。但是,有一些带有.asp扩展名的网址,我不想重定向。

这些网址在浏览器地址栏中显示如下。

https://www.example.com/seriesdisplay.asp?cat=DR3&class=50

我尝试使用以下规则。它的工作原理是不重定向seriesdisplay.asp页面本身,但任何包含两个查询字符串的页面仍会重定向。

如何不重定向所有包含查询字符串的seriesdisplay.asp页面?

  <rule name="Redirect-asp-aspx-IIS-new">
    <match url="(.*?)asp$" ignoreCase="true" /> 
      <conditions>
        <add input="{REQUEST_URI}" negate="true" pattern="^/seriesdisplay\.asp$" ignoreCase="true" />
      </conditions>
    <action type="Redirect" url="{R:0}x" redirectType="Permanent" />
  </rule>

1 个答案:

答案 0 :(得分:0)

我明白了。

  <rule name="Redirect-asp-aspx-IIS-new">
    <match url="(.*?)asp$" ignoreCase="true" /> 
      <conditions>
        <add input="{REQUEST_URI}" negate="true" pattern="^/seriesdisplay(.*)$" ignoreCase="true" />
      </conditions>
    <action type="Redirect" url="{R:0}x" redirectType="Permanent" />
  </rule>