gpt4 book ai didi

node.js - 测试客户端是否可以使用端口 80、443、843 连接到 WebSockets

转载 作者:搜寻专家 更新时间:2023-10-31 22:34:04 24 4
gpt4 key购买 nike

我正在 Node 服务器上运行 WebSockets 应用程序。一切正常,除了我的应用程序在学校使用,他们的一些防火墙显然阻止了端口 80 上的 WebSockets。我读到一些端口,如 843 通常是畅通的,但我想在进行任何切换之前测试一下。

如何测试打开的 WebSockets 端口?例如从客户端尝试端口 80、443 和 843 并报告​​哪些有效?任何教程或代码片段都会很棒...

最佳答案

我一直在使用 http://websocketstest.com/查看阻止我的 socket.io websockets。我刚刚也遇到了一个场景,其中客户端有一个防火墙阻止端口 80 上的流量。与其坚持让他们跳过箍,我现在在 443 上监听,没有必要为此目的在该端口上使用 SSL。

在 nginx 中,我首先将所有流量重定向到 socket.test.com 端口 80 到端口 443,因此:

server {
listen 80;
server_name socket.test.com;
rewrite ^ http://test.com:443$request_uri?;
}

然后

server {
listen 443;
server_name socket.test.com

location / {
proxy_pass http://127.0.0.1:3004;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}

在端口 3004 上,socket.io 服务器正在接受连接。有效!

2018 年更新:感谢 letsencrypt.com,现在添加 https 证书变得微不足道,因此所有这些都可以通过 443 上的加密来完成

关于node.js - 测试客户端是否可以使用端口 80、443、843 连接到 WebSockets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22745020/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com