前端后端都是socket.io的库
nginx代理映射
看到@alsotang 的回复闪出了灵光。 最终发现的问题居然不是socket的问题,而是pm2 应用进程数的问题,
原因是我本地测试只用了一个进程,也就是 -i 1,挂在外网 -i 2 。这样问题就来了。
为什么多了一个进程就不行了。
回复 (11)
R
有用反向代理么
H
引用 RavenZZ有用反向代理么
@RavenZZ 有用nginx代理
R
引用 heixiaoshan@RavenZZ 有用nginx代理
@heixiaoshan Nginx开启 支持websocket了么
H
引用 RavenZZ@heixiaoshan Nginx开启 支持websocket了么
@RavenZZ 怎么开?可是前后端用的都是socket.io。 下面这个吗? location ...socket/io{ }
R
K
5楼正解,其实就是把 Upgrade 和 Connection 这两个 header 转发过去。
H
H
引用 klesh5楼正解,其实就是把 Upgrade 和 Connection 这两个 header 转发过去。
@klesh 代码不是我写的,我先排查一下问题,看看还可能存在的问题是什么
K
A
感觉 nginx 放在外围的话一般有两个问题 一是对于 websocket 协议的支持 二是需要把同一个用户定位到同一个进程上
H
引用 alsotang感觉 nginx 放在外围的话一般有两个问题 一是对于 websocket 协议的支持 二是需要把同一个用户定位到同一个进程上
@alsotang 找到问题所在了,看到你的第二句回复。哈哈
参与回复
登录后即可参与回复。登录