【问题标题】:Accessing IIS Express hosted website remotely on Azure VM在 Azure VM 上远程访问 IIS Express 托管网站
【发布时间】:2015-12-30 18:22:54
【问题描述】:

我在 Azure 虚拟机上使用 IIS Express 在调试模式下运行 Visual Studio 解决方案。

我可以使用它的域 RDP 进入这台机器:

myapp.cloudapp.net:port#

IIS Express 正在运行:

本地主机:2799

我还使用 HTTP 创建了一个端点,将公共端口 80 映射到 2799。

但是 URL http://myapp.cloudapp.net 没有连接或中继到在 localhost:2799 运行的网页。为了实现这一点,还需要做些什么吗?

【问题讨论】:

  • 几个想法 - 浏览时遇到什么错误? http绑定是否正确?此外,不知道 Azure VM 是否默认打开了 http 端口(通过防火墙)。可能值得一试。

标签: c# .net azure ip virtual-machine


【解决方案1】:

我相信您唯一需要修改的就是在防火墙中添加新规则以打开端口 2799。 尝试禁用防火墙并检查网站是否可用。 如果显示该页面 - 将适当的规则添加到防火墙。

【讨论】:

  • 我关闭了防火墙,仍然无法访问80或2799。
  • 这就是我的应用程序的配置方式 See screenshot 。我唯一更改的是添加端口映射和添加防火墙规则。您可以尝试配置全权 IIS,然后配置 IIS Express。
【解决方案2】:

您可能需要进行三项更改。

1.告诉 IIS Express 自身绑定到所有 IP 地址和主机名。在您的 .config 文件中(通常 %userprofile%\My Documents\IISExpress\config\applicationhost.config 或 $(solutionDir).vs\config\applicationhost.config(对于 Visual Studio 2015),找到您网站的绑定元素,然后添加:

   <binding protocol="http" bindingInformation="*:2799:*" />

2。设置名为“http.sys”的 Windows 位。以管理员身份运行命令:

   netsh http add urlacl url=http://*:2799/ user=everyone
  1. 允许 IIS Express 通过 Windows 防火墙。 开始 / 具有高级安全性的 Windows 防火墙 / 入站规则 / 新规则... 程序 %ProgramFiles%\IIS Express\iisexpress.exe 或端口 2799 TCP

现在,当您启动 iisexpress.exe 时,您应该会看到一条消息,例如

Successfully registered URL "http://*:2799/" for site "myapp" application "/" 

此配置与您的端点映射相结合应该可以解决问题 希望这可以帮助 最好的祝福 斯蒂芬

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-06
    • 2014-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    相关资源
    最近更新 更多