
我现在碰到这样一个问题:
请问有哪些简单的解决方案, 主要是 A 服务器如何转发 Webscoket 请求给 B 服务器,B 服务器通过扫码方式代理该请求? 目前有两个方案 1. A 服务器改 hosts 文件, 然后 B 服务器开端口转发, 不过貌似要占用 443 端口 2. A 服务器和 B 服务器都装 nginx, 双重反向代理 请问各位有没有更加优雅简单的方法?
1 julyclyde 2023-07-26 12:31:20 +08:00 先把拼写弄正确!! |
3 zmqking 2023-07-26 12:42:31 +08:00 via iPhone websocket |
4 ysc3839 2023-07-26 13:04:34 +08:00 via Android B 服务器端口转发用非 443 端口也可以吧 |
5 Nazz 2023-07-26 13:36:13 +08:00 在 B 服务器部署 socks5 就行了 |
6 march1993 2023-07-26 14:12:41 +08:00 通过 Service Worker API ?无感代理外网请求 |
7 lsk569937453 2023-07-26 14:16:45 +08:00 就 B 装一个 Nginx ,A 发请求到 B 的 Nginx 就完事了。 |
8 tin3w5 2023-07-26 14:24:41 +08:00 既然是正向代理,那就直接 Squid 。 |
9 abear 2023-07-26 14:29:12 +08:00 5,7 楼说得对 |
10 jack778 OP @Nazz A 服务器上是用 nginx 接收客户端请求的,请问如何让 B 服务器代理 A 服务器的 websocket 请求呢, A 服务器要怎么配置? |
11 Nazz 2023-07-26 15:24:16 +08:00 @jack778 首先在 B 服务器部署 socks5 server, 然后找一个支持代理的 websocket client. 如果是 go 语言, 可以用我写的这个 https://github.com/lxzan/gws |
12 jifengg 2023-07-26 16:48:40 +08:00 看你最后的描述,你是知道怎么转发的,只是问有没有更优雅的方法。 首先确定,客户端能不能访问 B 服务器?如果能,那 A 的 web 应用里,配置 ws 地址为 B 服务器的 ws 地址,让客户端直接连 B ,B 连网易。A 就不用再转一次 ws 了。这里要解决一个跨域问题就行了。 如果不能,那就只能 客户端->A->B->网易 了 |