1

我关注了scot关于如何分别为 http 和 https 启用默认端口(80 和 443)的文章。我已经按照每个步骤进行操作,最后 IIS 快速系统托盘向我显示该站点正在以下 url 上运行

在此处输入图像描述

我唯一不同的是使用netsh>advfirewall>firewall上下文,因为它告诉我netsh firewall不推荐使用。我使用以下命令允许端口 80 通过防火墙

netsh advfirewall firewall add rule name="Open Port 80" dir=in action=allow protocol=TCP localport=80 

这是 IIS Express 的 applicationhost.config 文件中的相关站点部分

<site name="SSLTest" id="4">
                <application path="/" applicationPool="Clr4IntegratedAppPool">
                    <virtualDirectory path="/" physicalPath="G:\Adeel\SSLTest\SSLTest" />
                </application>
                <bindings>
                    <binding protocol="http" bindingInformation="*:51518:localhost" />
                    <binding protocol="https" bindingInformation="*:44301:localhost" />
                    <binding protocol="http" bindingInformation="*:80:mhlabs" />
                  <binding protocol="https" bindingInformation="*:443:mhlabs" />
                </bindings>
            </site>

编辑:问题是当我浏览到 http:/mhlabs 或 https:/mhlabs 时它不起作用。我找不到浏览器的页面。我怎样才能解决这个问题。
Edit2:好的,作为第一步,我想忘记 ssl,只在端口 80 上为 test-one 保留一个 url,并在这个 url 上运行我的网站。想到的逻辑步骤是我保留一个 url,netsh http add urlacl url=http://test-one:80/ user=everyone并在 applicationhost.config 文件的 bindings 部分添加此条目。我还允许端口 80 通过防火墙,但整个事情似乎对我不起作用。有任何想法吗?

4

1 回答 1

4

您是从命令行启动 iis express 还是使用 WebMatrix?

如果您不是从命令行启动它,请尝试以下步骤并查看是否有任何绑定错误。

  1. 启动命令提示符,转到 iis express 安装文件夹 '%programfiles%\iis express'

  2. 运行以下命令

    iisexpress.exe /site:SSLTest

  3. 如果有任何绑定注册失败,您会看到一些错误消息。如果 'mhlabs' 绑定注册有任何错误,请确保您的 URL 保留是正确的。URL 保留命令应如下所示

    netsh http 添加 urlacl url=http://mhlabs:80/ user=everyone

于 2012-04-13T16:50:57.100 回答