【发布时间】:2013-02-02 05:59:54
【问题描述】:
所以我一直在尝试使用以下内容重写:
<rules>
<rule name="HttpToHttps" stopProcessing="true"/>
<match url="(.*)"/>
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true"/>
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{URL}"/>
</rule>
<rules>
在两种环境中,这会像它应该的那样重定向。在第三种环境中,它不起作用。从某种意义上说,它不起作用,查看提琴手日志,我看到带有完整 url 的 http 调用。当它重定向到 https 时,它会删除 HTTP_HOST 之后的所有内容。
所以使用以下网址:
nonsecure://www.mysite.com/page.aspx?var1=1&var2=2
在两种环境下,变成了
secure://www.mysite.com/page.aspx?var1=1&var2=2
第三个变成:
安全://www.mysite.com
我尝试将其重写为 https://{HTTP_HOST}{HTTP_URL} 并且在前两个环境中将 {URL} 翻倍:
secure://www.mysite.com/page.aspx?var1=1&var2=2&var1=1&var2=2
我对 web.configs 不是很有经验,我边走边学,所以如果有人对这里发生的事情有任何意见,我将不胜感激。如果它对任何事情有任何影响,则第三个环境位于两台负载平衡的服务器上。
【问题讨论】:
-
nonsecure = http 和 secure = https - 它在向我大喊要发布两个以上的链接。
标签: iis url-rewriting web-config