我有两个规则在我的web配置,这是冲突的一些网址。
第一条规则必须重定向到网站:
<rule name="Pop Up Cadastro">
<match url="^cadastro" />
<conditions logicalGrouping="MatchAll">
<add input="{SCRIPT_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{SCRIPT_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="site/site.php?url={R:0}" appendQueryString="true" />
</rule>如果没有找到匹配项,则第二条规则将重定向到热站点:
<rule name="HotSite">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAll">
<add input="{SCRIPT_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{SCRIPT_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="HotSite/Default.aspx?url={R:0}" appendQueryString="true" />
</rule>我的url结构是这样的:
//WebSite URL | First Rule
www.example.com/cadastro
//HotSite URL | Second Rule
www.example.com/cadastro-teste-e-com所以,我的问题是,有没有办法把第一条规则限制在这个词上?
提前谢谢。
发布于 2014-07-24 06:57:39
在第一条规则中,你有一个正则表达式,它可以匹配从地籍开始的所有内容,如果你只想匹配地籍,你需要在正则表达式的末尾添加$。
<rule name="Pop Up Cadastro">
<match url="^cadastro$" />
<conditions logicalGrouping="MatchAll">
<add input="{SCRIPT_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{SCRIPT_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="site/site.php?url={R:0}" appendQueryString="true" />
</rule>https://stackoverflow.com/questions/24865206
复制相似问题