我是Websocket编程的新手,但我的最新项目需要在Ubuntu Linux Server上部署WebSocket服务器 . 我从网上读了一些,知道 -
-
websocket客户端将通过端口80/443连接到服务器,其协议标识符相应地为ws / wss . http://www.websocket.org/aboutwebsocket.html
-
Apache / Nginx Web服务器通常会在服务器端监听80/443,因此我们必须配置Apache / Nginx以支持ws / wss协议,更好地将连接传输到websocket服务器,就像代理一样 .
-
Apache有一些websocket服务器附加组件,我也知道Nginx 1.3本身支持websocket协议,并且可以配置它以及使用websocket服务器 .
基于我所知道的,我认为我可以通过80/443一起部署Apache / Nginx和Websocket服务器 . 我想知道,如果我们能够不经意地使用websocket服务器?我想如果我们可以写一个从其他端口连接到服务器的websocket客户端,那么我们就可以做到 .
那么我们可以编写一个websocket客户端来连接不同端口的服务器吗?
1 回答
是 . 独立的WebSocket服务器通常可以在任何端口上运行 . 浏览器客户端打开与非HTTP(S)端口上的服务器的WebSocket连接没有问题 .
默认端口为80/443的主要原因是它们是最可靠的大规模使用端口,因为它们能够遍历阻止所有其他端口上所有流量的许多企业防火墙 .
如果这对您的受众来说不是问题(或者您有基于HTTP的回退),那么为WebSocket服务器使用备用端口是完全合理的(并且更容易) . 另一种选择是使用80/443端口,但使用单独的IP地址/主机名 .