我在配置文件中的asp.net mvc应用程序中有一个重写规则:
<rule name="Website1" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(www.)?website1.com" />
<add input="{PATH_INFO}" pattern="^/website1/" negate="true" />
</conditions>
<action type="Rewrite" url="\website1\{R:0}" />
</rule>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,规则如何在两个条件下工作?这两个条件一定是真的吗?
是的,两个条件都必须是真的.
条件在重写规则的集合中定义.此集合具有名为logicalGrouping的属性,该属性控制如何评估条件.如果规则具有条件,则仅当匹配规则模式时才会执行规则操作,并且:
- 如果使用的话,所有条件都评估为真
logicalGrouping="MatchAll".- 如果使用的话,至少有一个条件被评估为真
logicalGrouping="MatchAny".
Doc不清楚默认使用哪个逻辑分组,但我可以说它是MatchAll.
换句话说,<conditions>就是一样<conditions logicalGrouping="MatchAll">.
| 归档时间: |
|
| 查看次数: |
4093 次 |
| 最近记录: |