IIS将HTTP重定向到HTTPS重定向循环
问题描述:
我有一个站点设置使用SSL证书并通过https服务该站点。但是,我无法使URL重写正常工作,以将尝试的连接尝试重定向,以遵循某些规则,最终导致使用特定的URL。IIS将HTTP重定向到HTTPS重定向循环
对于此时安全起见,我只想说的域名:example.com
我所试图做的是以下几点。
- 全部重写应该重写,基本要求,以https://www.example.com/
例如,可以说我有这些前/ afters:
- 前:http://example.com/
- 后:https://www.example.com/
- 之前:http://example.com/hello/
- 后:https://www.example.com/hello/
- 前:http://sub.example.com/
- 后:https://sub.example.com/
等。但是,无论我使用哪个示例,我都可以在线查找以执行HTTP到HTTPS重定向,但我留下的IIS只会导致无限循环重定向,从不正常工作。在IIS网站上
绑定如下:
- 类型:HTTP /主机名:www.example.com /端口:80/IP地址:*
- 类型:HTTP /主机名:example.com /端口:80/IP地址:*
- 类型:HTTPS /主机名:www.example.com /端口:443/IP地址:*
答
我用这一个
<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}/{R:1}" redirectType="Found" />
</rule>
</rules>
</rewrite>
您可以从web.config中添加您的规则列表。 –