描述:应用(毕设)部署在本机。我修改了 hosts,将一个域名指向本机。自建证书后,用 Nginx 配置了 HTTPS,也为几个 Tomcat 服务配置了反向代理。
问题:在用到 WebSocket 的时候,经调试使用 WS 协议是可以的,问题出在使用 WSS 协议上。在 StackOverflow 上查了一下,似乎需要配置一个stunnel
的玩意,懵比了。。。个人对 Nginx 了解不多,所以请教一下大家为 Nginx 配置 WSS 的经验。
1
threedream 2017-05-12 19:49:20 +08:00
毛毛,我占据一楼
|
2
wly19960911 2017-05-12 20:06:21 +08:00 via Android
wss 不需要额外设置啊,我用的是 spring-Web socket,另外关注下错误代码
|
3
wly19960911 2017-05-12 20:09:10 +08:00 via Android
@wly19960911 突然记起来有一个设置是 HTTP 头必须设置 Connection:upgrade,但是不像你要描述的,我想不出我在 nginx 上设置了啥
|
4
fantastM OP @wly19960911 咦,不需要其它配置嘛。我也是用 Spring-WebSocket。我看 Nginx 文档上介绍 WS 配置也是很简单的,愁恼……或许是我姿势不对,明天再试试= =
|
5
wql 2017-05-12 21:14:09 +08:00 via Android
@fantastM
@wly19960911 如果与后端也是 wss 协议的话要配置: proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; |
6
wql 2017-05-12 21:14:18 +08:00 via Android
|
7
eoo 2017-05-13 08:04:06 +08:00 via Android
楼上正解
|
8
fantastM OP |