我想使用IIS URL重写模块创建规则。我想将所有页面从www.mydomain.com重定向到mydomain.com
但是,该站点上有些页面我不喜欢重定向。这些页面是
这是到目前为止的代码
<rule name="Force non-WWW" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
<add input="{REQUEST_URI}" pattern="^/mail/(.*)" negate="true" />
<add input="{REQUEST_URI}" pattern="^/mail2/(.*)" negate="true" />
</conditions>
<action type="Redirect" url="https://{C:2}/{R:1}" />
</rule>
但是,如果启用此规则并转到www.mydomain.com/page,则会出现500错误。
我的代码有什么问题?
答案 0 :(得分:0)
只需添加条件<add input="{REQUEST_URI}" pattern="/some-url/(.*)" negate="true" />
。您可以使用以下规则:
<rule name="Force non-WWW" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_URI}" pattern="/mail/(.*)" negate="true" />
<add input="{HTTP_HOST}" pattern="(www\.)(.*)$" />
</conditions>
<action type="Redirect" url="http://{C:2}/{R:1}" appendQueryString="true" />
</rule>
关于, 贾帕。