在我的 Windows 2012 服务器上,我在 IIS 中安装了 URL 重写模块。我已按照本指南将非 www 重定向到 web.config 中的 www:http: //www.surfingsuccess.com/asp/iis-url-rewrite.html#.VF6GBid0yAU
到目前为止,一切都很好!
唯一的问题是我们还托管子域“api.example.com”。当我在 web.config 中应用代码时,此 API 停止工作。
我的问题是:下面的代码有什么问题?为什么当我尝试将非 www 重定向到 www(“api.example.com”除外)时子域停止工作?
<rewrite>
<rules>
<rule name="CanonicalHostNameRule1">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www\.example\.com$" negate="true" />
<add input="{HTTP_HOST}" pattern="^api\.example\.com$" negate="true" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:1}" />
</rule>
</rules>
</rewrite>