Http谓词的白名单 - Web.config重定向规则

时间:2017-03-23 15:50:51

标签: regex web-config url-redirection

我有以下重定向规则:

<rule name="Remove trailing slash" stopProcessing="true">
  <match url="^(https://[^/]+/(?!api/).+)/$" />
  <conditions>
    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
  </conditions>
  <action type="Redirect" redirectType="Permanent" url="{R:1}" />
</rule>

我想将Http动词GET列入白名单,并阻止任何其他动词扰乱此重定向规则,但我只能找到如何黑名单动词的文档,如下:

<add input="{REQUEST_METHOD}" matchType="Pattern" pattern="POST" ignoreCase="true" negate="true" />        
<add input="{REQUEST_METHOD}" matchType="Pattern" pattern="DELETE" ignoreCase="true" negate="true" />

它可能看起来像这样:

<add input="{REQUEST_METHOD}" matchType="Pattern" pattern="GET" acceptonly />

0 个答案:

没有答案