windows-server-2016中的IIS-10无法将HTTP请求重定向到HTTPS。
我尝试了互联网上几乎所有可用的配置,但仍然没有成功。
注意:我的服务器也将获得子目录网址,并提供以下示例:
http://abctest.com/subfolder_1
http://abctest.com/subfolder_2
等
可能有N个子文件夹。),但是IIS-10无法将Http请求重定向到Https。
请在IIS-10 GUI中找到以下配置以及web.config文件:
答案 0 :(得分:0)
您可以使用以下URL重写规则将带有子文件夹的URL重定向到https:
<rule name="http to https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" />
</rule>
另外,将证书绑定到站点绑定中。如果您没有注册证书,则可以绑定自签名证书。
首先,您需要使用以下Powershell命令创建自签名证书:
New-SelfSignedCertificate -DnsName www.test.com -CertStoreLocation cert:Localmachine\My
并将该证书与IIS站点绑定:
关于, 贾帕(Jalpa)
答案 1 :(得分:0)
<rewrite>
<rules>
<rule name="http -> https" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions trackAllCaptures="true">
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:0}" redirectType="Temporary" />
</rule>
</rules>
</rewrite>
这是我在生产环境中使用的工作版本。适用于与站点以及子文件夹绑定的任何绑定。如果您不喜欢xml,那么这里是其外观的屏幕截图。然后,让我困扰了一两次的唯一另一件事是,确保您同时拥有要重定向的网址的http和https绑定。
答案 2 :(得分:0)
我通过按规则排列规则解决了这个问题。 (始终按顺序定义入站规则。)
感谢所有支持此查询的人。