我已经创建了一个 asp.net 4.0 项目。我想为它启用 SSL。我需要将此 Web 项目映射到 IIS 中的新网站吗?当我尝试创建一个新网站时,我得到:
绑定(bind)“*:80:”已分配给另一个站点。如果您将相同的绑定(bind)分配给该站点,您将只能启动其中一个站点。您确定要添加此重复绑定(bind)吗?
我正在尝试关注以下帖子:
http://weblogs.asp.net/scottgu/archive/2007/04/06/tip-trick-enabling-ssl-on-iis7-using-self-signed-certificates.aspx
http://mscrm4humans.wordpress.com/2010/06/24/enabling-ssl-on-iis-7-0-using-self-signed-certificates/
我的 IIS 是 7.5.7600.... 我对 asp.net 中的 SSL 完全陌生。请提出解决此问题的建议。
最佳答案
虽然可以配置主机 header 来执行您想要的操作,但简单的方法是使用不同的 IP 地址配置您的新站点。
将新的 IP 地址添加到服务器,然后将新站点的绑定(bind)设置到端口 80 和 443 上的新 IP 地址。将应用程序池设置为使用 .NET 4 运行,然后您可以添加将所有非 SSL 流量推送到 HTTPS 的 URLRewrite 规则,方法是将其粘贴到您的 web.config 中:
<system.webServer>
<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="SeeOther" />
</rule>
</rules>
</rewrite>
</system.webServer>
或者,如果您想强制使用 SSL,则只需在 IIS 中为站点勾选 Force SSL
选项即可。
关于asp.net - 在 asp.net 4.0 和 IIS 7.5 中启用 SSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5882979/