如果一个websocket服务器没有托管在80端口,那么它将对Internet浏览器不可见?
我不能使用80端口(被IIS使用),也不能使用443和8080。
在自定义端口上托管的websockets是否会有防火墙问题?
唯一的方法是使用IIS8来共享同一端口(80)吗? (我正在使用带有SuperWebSocket库的IIS7)
从浏览器访问的Websockets不应该部署在自定义端口上?
提前感谢。
不行。如果需要,浏览器中的应用程序可以打开WebSocket到其他端口,但要遵守CORS限制。通常最好将WebSockets保留在80端口上,这样中间件和边缘网关就不必更改防火墙规则。
我不能使用80端口(它正在被IIS使用),也不能使用443或8080端口。托管在自定义端口上的WebSockets是否会有防火墙问题?
很可能会有问题,除非您控制防火墙并能够打开其他端口。
如果您可以控制防火墙,那么在自定义端口上运行websocket服务器就没有问题。您只需要打开该端口以允许传入流量即可。
问题并不是防火墙本身,而是其他类型的过滤、代理、负载均衡等,在流量到达您的服务器之前发生的问题。但是,除非您有未提及的特定要求,否则简单地允许该端口上的流量应该没有问题。
如果您的WebSocket服务器配置为限制连接到特定来源(CORS),则需要允许该来源进行连接。源是将提供发出WebSocket请求的Web页面的Web服务器的地址。默认情况下通常是完全开放或仅限于WebSocket服务器本身的地址。