如何使用web.config文件强制HTTPS
我搜索过Google和StackOverflow,试图找到解决方案,但它们似乎都与ASP.NET等有关。
我通常在服务器上运行Linux,但是对于这个客户端,我使用的是带有IIS 7.5(和Plesk 10)的Windows。这就是为什么我
文件的原因。在.htaccess
文件中,您可以使用重写条件来检测协议是否为HTTPS并进行相应的重定向。有没有
可以使用web.config文件甚至使用已安装的“ ”模块来实现此目的?
我 因此,如果解决方案中涉及此内容,请提供清晰的实现步骤。
之所以使用web.config而 PHP 这样做是因为我想对站点内的所有资产强制使用HTTPS。
回答:
您需要URL重写模块,最好是v2(我没有安装v1,因此不能保证它会在那里工作,但是应该可以)。
这是此类web.config的示例-它将对所有资源强制使用HTTPS(使用301永久重定向):
<?xml version="1.0" encoding="UTF-8"?><configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="Redirect to https" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
此特定解决方案与ASP.NET/PHP或任何其他技术无关,因为它仅使用URL重写模块完成-它在初始/较低级别之一中进行处理-
在请求到达您的代码之前被执行。
以上是 如何使用web.config文件强制HTTPS 的全部内容, 来源链接: utcz.com/qa/399855.html