我有一个在IIS 7.5中运行的网站。当我通过HTTP访问该网站时,一切正常。当我通过HTTPS运行该站点时,我立即收到HTTP 503错误“服务不可用”。网站上使用的SSL证书是自生成/自签名的。
以下是我遇到的类似问题的解决方案,这些问题不适用于此方案:
this blog上的评论者Chad Cothern得到了答案,并由BretB与this Microsoft Blog联系起来。在这种情况下的问题是端口443上的所有内容都已被保留,并且“阻止W3SVC在尝试启动站点时获得侦听端口80的权限。此外,在IIS中运行的应用程序不需要显式保留来运行,只有非IIS应用程序必须保留URL命名空间才能使用HTTP来侦听请求。“
以下是确定这是否是问题以及如何解决的步骤:
netsh http show urlacl url=https://+:443/
netsh http delete urlacl https://+:443/
请注意,您还可以使用此方法检查端口80或任何其他端口。例如,如果保留端口80而不保留443,则通过HTTPS的站点可以工作,而HTTP则不会。