如何使用AppHostHttpListenerBase绑定到公共IP和localhost

时间:2013-08-19 14:43:01

标签: servicestack

我创建了一个运行AppHostHttpListenerBase的ServiceStack Windows服务。我可以通过监听服务器的私有IP地址来监听远程请求(例如http://1.2.3.4:8080/。在这种情况下,我可以使用服务器的公共IP地址在Internet上使用服务,但是在服务器http://localhost:8080/失败。

如果我将绑定地址更改为http://*:8080/,则localhost的请求成功,但我无法再通过Internet访问服务器;我得到503服务不可用。

如何让我的网络服务能够通过互联网收听本地请求和请求?

同样重要的是,为什么当放松从特定IP到*的侦听地址的限制时,互联网上的请求突然开始失败?< / p>

1 个答案:

答案 0 :(得分:5)

可能是某些其他侦听器已在处理请求,而*仅匹配未处理的请求。我会试着听http://+:8080/,希望它有所帮助。 有关HttpListenerPrefix的更多信息,请参阅https://msdn.microsoft.com/en-us/library/system.net.httplistenerprefixcollection.add(v=vs.110).aspx