servicestack 如何使用AppHostHttpListenerBase绑定到公共IP和本地主机,servicestack,servicestack" /> servicestack 如何使用AppHostHttpListenerBase绑定到公共IP和本地主机,servicestack,servicestack" />

servicestack 如何使用AppHostHttpListenerBase绑定到公共IP和本地主机

servicestack 如何使用AppHostHttpListenerBase绑定到公共IP和本地主机,servicestack,servicestack,我创建了一个ServiceStack Windows服务,它运行一个AppHostHttpListenerBase。我可以通过监听服务器的私有IP地址(例如http://1.2.3.4:8080/。在这种情况下,我可以使用服务器的公共IP地址在Internet上使用服务,但在服务器上执行的对http://localhost:8080/失败 如果我将绑定地址更改为http://*:8080/,则对localhost的请求会成功,但我无法再通过Internet访问服务器;我得到的503服务不可用 有

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

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

有没有办法让我的web服务同时侦听本地请求和Internet上的请求


而且,同样重要的是,为什么当放松对从特定IP到
*
的侦听地址的限制时,Internet上的请求会突然失败?

可能是其他侦听器已经在处理该请求,而*只匹配未处理的请求。我会尝试请收听http://+:8080/,希望对您有所帮助。
有关HttpListenerPrefix的更多信息,请参见

很好,我已经获得了它。我以前为特定IP地址保留了一个URL,该地址配置为
netsh http add urlacl
。一旦我实际删除了旧的保留,*版本也开始工作。谢谢!