html - websocket客户端能否从80/443以外的不同端口连接到websocket服务器

标签 html websocket

我是 Websocket 编程的新手,但我的最新项目需要在 Ubuntu Linux Server 上部署 WebSocket 服务器。我从网上看了一些,知道了-

  1. websocket客户端会通过80/443端口连接到服务器,相应的协议(protocol)标识符是ws/wss。 http://www.websocket.org/aboutwebsocket.html
  2. Apache/Nginx 网络服务器通常会在服务器端监听 80/443,因此我们必须配置 Apache/Nginx 以支持 ws/wss 协议(protocol),更好地像代理一样将连接传输到 websocket 服务器。
  3. 有一些用于 Apache 的 websocket 服务器附加组件,我也知道 Nginx 1.3+ 本身支持 websocket 协议(protocol),配置它也可以与 websocket 服务器一起使用。

据我所知,我认为我可以通过 80/443 将 Apache/Nginx 和 Websocket Server 一起部署。我想知道,我们是否可以独立使用 websocket 服务器?我认为如果我们可以编写一个从其他端口连接到服务器的 websocket 客户端,那么我们就可以做到。

那么我们可以写一个 websocket 客户端来从不同的端口连接服务器吗?

最佳答案

是的。独立的 WebSocket 服务器通常可以在任何端口上运行。浏览器客户端可以在非 HTTP(S) 端口上打开与服务器的 WebSocket 连接。

默认端口为 80/443 的主要原因是它们是最可靠的大规模使用端口,因为它们能够穿越许多阻止所有其他端口上的所有流量的公司防火墙。

如果这对您的观众来说不是问题(或者您有基于 HTTP 的回退),那么为 WebSocket 服务器使用备用端口是完全合理的(并且容易得多)。另一种选择是使用 80/443 端口,但使用单独的 IP 地址/主机名。

关于html - websocket客户端能否从80/443以外的不同端口连接到websocket服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15730009/

相关文章:

javascript - Bootstrap 轮播段落 slider

javascript - 如何创建一个基本的 jQuery 下拉菜单?

javascript - 隐藏在类型文本输入中输入的文本

javascript - HTML5 websockets 和代理配置

javascript - 在 javascript 套接字中发送 JSON.stringify 对象和普通对象有什么区别?

Spring WebSockets - 如何仅将@DestinationVariable 应用于@SendTo 注释?

javascript - 灯箱弹出窗口仅出现一次

javascript - jQuery 出站链接匿名化 + 法律声明

node.js - peerjs连接打开,但没有收到数据

javascript - WebSocket 语法错误 : An invalid or illegal string was specified