我无法让运行 Windows Server 2012 的 Azure VM 通过其公共静态 IP 提供 IIS 默认网站。
创建了运行 Win Server 2012 R2 的 VM 并安装了 Web 服务器角色。
浏览到 localhost 并可以看到默认网站正在运行
在 Azure 中,将 VM 配置为具有公共静态 IP 地址,并将 DNS 名称添加到 Azure,该名称可公开解析为静态 IP。
在 Azure 中,为虚拟机网络接口配置了一个安全组,并添加了以下规则:
allow-http source: any source port: 80 dest: any dest port: 80 service: tcp/80 action: allow allow-https source: any source port: 80 dest: any dest port: 80 service: tcp/443 action: allow
在 Windows 防火墙设置中,确保已启用允许 HTTP 和 HTTPS 流量的规则。(我也尝试过完全禁用防火墙)。
在 IIS 中确保默认网站绑定到任意 IP 地址。
当我尝试连接到虚拟机静态 IP 地址(例如:)时http://MY.PUBLIC.STATIC.IP
,我根本无法连接。我也无法 PING 到服务器。
对于我做错什么有什么想法吗?
答案1
您将传入连接限制为仅端口 80。客户端浏览器可以使用 1024 至 65536 范围内的端口号进行传出连接。
您需要更改安全组设置以允许来自任何端口的传入连接:
allow-http source: any source port: any dest: any dest port: 80 service: tcp/80 action: allow
allow-https source: any source port: any dest: any dest port: 80 service: tcp/443 action: allow
答案2
您不需要在两个规则中都针对“目标端口”指定“任何”,而是需要指定端口“80”和“443”作为目标端口。
这样,当你把http://MY.PUBLIC.STATIC.IP 你的流量将到达端口 80;当你输入https://MY.PUBLIC.STATIC.IP 你的流量将达到 443。
来自微软的关联,检查子主题“前端子网的 NSG”。