带有负载均衡器的OWIN自托管WebAPI上的错误404和带有IIS的

时间:2016-05-11 07:45:20

标签: iis asp.net-web-api owin load-balancing

我有这个场景:

  • 我有一个带有公共URI的负载均衡器。它有一个混凝土端口,重定向到另一台名为' Frontal'的机器。将来会有更多的机器,Frontal2' Frontal3' Frontal3'等等。

  • 在那个' Frontal'我有一个OWIN自托管的WebAPI服务,可以监听该端口。

  • 如果我从' Frontal'向服务发送HTTP请求?机器使用localhost:port / api / ...和主机头='正面:端口'它运行正常,我收到200响应。

  • 如果我从其他计算机向负载均衡器发送相同的HTTP请求,请使用'负载均衡器的名称:port'在主机头中,我得到404错误。

  • 如果我从其他计算机向负载均衡器发送相同的HTTP请求,请使用' Frontal:port'主机头,它正确返回200响应。

  • 但是,如果我停止该服务,并将同一个WebAPI作为一个应用程序激活到同一个' Frontal'机器,然后我发送一个请求与负载均衡器:端口'主机标头到平衡器,WebAPI正确返回200响应。

即:如果我没有明确地将主机标头设置为' Frontal'的名称,则使用自托管我无法访问该服务,如果设置了正确的此标头到公共负载均衡器的名称。但是,如果我将WebAPI安装到IIS中,它将正确运行。

我想我需要在OWIN服务中配置一些东西,但我不知道它是什么。你能救我吗?

非常感谢。

0 个答案:

没有答案