![IIS URL 重写规则将子目录流量重定向到 https](https://linux22.com/image/632689/IIS%20URL%20%E9%87%8D%E5%86%99%E8%A7%84%E5%88%99%E5%B0%86%E5%AD%90%E7%9B%AE%E5%BD%95%E6%B5%81%E9%87%8F%E9%87%8D%E5%AE%9A%E5%90%91%E5%88%B0%20https.png)
我有一个网站,我在其中编写了 URL 重写规则,将所有 site.com 流量引导至 www.site.com。
工作正常。
现在我想将 SSL 添加到子目录中的应用程序。我已将 SSL 添加到网站,但想重定向到http://www.site.com/application/到https://www.site.com/application
以下是我的想法:
<rule name="Redirect Supply Management System traffic to https" stopProcessing="true">
<match url="(.*)/supply-management-system/(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="(.*)/supply-management-system/(.*)" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}/{R:2}" appendQueryString="true" />
</rule>
如果我测试这些模式,它们似乎都正常,但是当我通过 http 导航到应用程序时,我不会被重定向。
任何想法都很好,谢谢!
答案1
这有效:
<rule name="Redirect Supply Management System traffic to https" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url="(^supply-management-system/.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" />
</rule>