503 服务不可用 IIS + localhost + WebAPI + VS Android Emulator .Net Core 2

503 service unavailable IIS + localhost + WebAPI + VS Android Emulator .Net Core 2

我没有别的想法。

我在 IIS 上的本地主机上有 WebAPI (.NetCore 2) 运行。当我使用 Postman 连接到它时,一切正常。但是当我尝试从 VS Android 模拟器连接时,我只收到 503 错误。我想我什么都试过了。

我的设置是: - WebApi 在端口 8080

上 运行

我的 VS 模拟器网络设置是:

我正在使用以下方式连接到 WebApi: http://169.254.80.80:8080/api/

在本地主机上(例如来自 Postman)是: http://localhost:8080/api/

我已将传入规则添加到我的 windows 防御者中,允许连接 TCP 端口 8080。

这是来自 applicationhost 的我的 SITES 部分。

<sites>
  <site name="WebSite1" id="1" serverAutoStart="true">
    <application path="/">
      <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
    </application>
    <bindings>
      <binding protocol="http" bindingInformation=":8080:localhost" />
    </bindings>
  </site>
  <site name="Nerdolando.Boomerang.WebAPI" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
      <virtualDirectory path="/" physicalPath="D:\projekty\cs\Boomerang\source\webapi\Nerdolando.Boomerang.WebAPI" />
    </application>
    <bindings>
      <binding protocol="http" bindingInformation="*:50628:localhost" />
      <binding protocol="http" bindingInformation="*:50628:169.254.80.80" />
      <binding protocol="http" bindingInformation="169.254.80.80:8080" />
      <binding protocol="http" bindingInformation="*:8080:169.254.80.80" />
    </bindings>
  </site>
  <siteDefaults>
    <logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
    <traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
  </siteDefaults>
  <applicationDefaults applicationPool="Clr4IntegratedAppPool" />
  <virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>

如您所见,我尝试了不同的绑定。并且仍然收到 503 错误。我还能做些什么?

您的 IIS 绑定错误:http:*:8080:localhost

您在 'Host name' 字段中有 "localhost"。这意味着如果 "localhost" 用作域名,IIS 将仅向该站点发送流量。由于您尝试通过 IP 访问,IIS 不知道将其发送到哪个站点并给您一个 503。

您的绑定应如下所示(将 'Host name' 留空):