【问题标题】:How to access an ASP.NET web api that runs on localhost (IIS)如何访问在 localhost (IIS) 上运行的 ASP.NET Web api
【发布时间】:2019-03-30 04:01:17
【问题描述】:

我构建了一个 ASP.NET Web API。我从 IIS Express 上的 Visual Studio 本地运行它。我需要从另一个网络的其他设备访问这个 api,所以我知道它必须托管在 IIS 上的开发机器上,对吗?我读到的是:

  1. 我需要在控制面板中启用 IIS 管理器 (source) - 完成
  2. 将开发机器的 IP 分配给本地主机 (source;source 2) - 我在 IIS 管理器中的站点下看不到我的站点,只看到默认网站。这是为什么呢?
  3. 我假设该站点需要以某种方式托管在开发计算机上,因为我需要停止 Visual Studio,因此 IIS Express 将停止并且该站点将无法访问,即使从 localhost 也无法访问,对吗?

我的开发机器有一个公共静态 IP,我可以从外部成功访问这个默认网站。

【问题讨论】:

  • 除非您有静态 IP,否则您将无法从其他网络访问您的 API,您有吗?
  • 你快到了,你需要通过右键单击然后“发布”来编译你的 asp.net web api,然后当它编译时它将生成一个包含多个 aspx、dll 等的文件夹。你需要将该文件夹复制到 C:\inetpub\wwroot\
  • @BrankVictoria,我是通过发布到文件夹来完成的,然后将其粘贴到 c:\inetpub\wwroot 中,但 localhost 仍然可以找到旧的 IIS 模板网页。奇怪

标签: asp.net visual-studio iis web-hosting


【解决方案1】:

您应该将 IIS 中的 API 视为任何 IIS 应用程序。即一个网站。 它需要有一个 IP(或主机头值) 假设 api1.example.com 与您的 IIS 应用程序绑定在 IIS 中。 您的 DNS 必须将此解析为 IIS 计算机 IP。 那么您可以在该 URL 中访问它。

您也可以直接点击运行 IIS Web 服务器的机器 IP(在您为 api 添加的端口上 - 如果不是:80) 请参阅 IIS 中的“绑定”

观看此视频:https://www.youtube.com/watch?v=I32AnqJzD58

【讨论】:

    猜你喜欢
    • 2018-05-14
    • 1970-01-01
    • 2014-04-07
    • 1970-01-01
    • 2020-06-28
    • 2021-12-01
    • 2023-03-10
    • 1970-01-01
    • 2018-11-16
    相关资源
    最近更新 更多