一直在努力解决这个问题,无法让它发挥作用。在网上找不到任何答案。
我在根(www.example.com)和应用程序(www.example.com/APP_SSL)中尝试过web.config
基本上,我有一台带有多个网站的iis 8服务器。
对于一个特定的网站。 (比如example.com)我希望子订单始终重定向到https。具体来说,这些子文件夹是Applications。
我也在尝试重定向example.com - > www.example.com同时。
这是我想要完成的事情:(对不起,如果我太详细了)
example.com/APP_SSL/... -> httpS://www.example.com/APP_SSL/...
www.example.com/APP_SSL/... -> httpS://www.example.com/APP_SSL/...
但是对于其他文件和应用程序,请确保我们有www部分。 只要以上工作,我就可以没有这些东西。
example.com -> http://www.example.com
www.example.com -> http://www.example.com (yes I know this is always true)
example.com/file.htm -> http:/www.example.com/file.htm
www.example.com/file.htm -> http:/www.example.com/file.htm
example.com/APP/ -> http://www.example.com/APP/...
www.example.com/APP/ -> http://www.example.com/APP/...
我试过这个,但它确实没有做我想做的任何事情。
<rewrite>
<rules>
<rule name="Redirect to www" stopProcessing="true">
<match url="(.*)" />
<conditions trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="^example.com/APP_SSL$" />
</conditions>
<action type="Redirect" url="{MapProtocol:{HTTPS}}://www.example.com/APP_SSL/{R:1}" />
</rule>
</rules>
<rewriteMaps>
<rewriteMap name="MapProtocol">
<add key="on" value="https" />
<add key="off" value="http" />
</rewriteMap>
</rewriteMaps>
</rewrite>
把它放在我的/APP_SSL/Web.Config中,除了example.com之外,我得到了我想要的大部分内容 - &gt; www.example.com
<rewrite>
<rules>
<rule name="Redirect to HTTPS" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/APP_SSL/{R:0}" redirectType="SeeOther" />
</rule>
</rules>
<rewriteMaps>
<rewriteMap name="MapProtocol">
<add key="on" value="https" />
<add key="off" value="http" />
</rewriteMap>
</rewriteMaps>
</rewrite>