微信小程序websocket中的坑
前言
最近在做一个基于swoole+laravel的websocket应用于微信小程序上,做一个聊天室的小程序。但是小程序那边只支持默认端口(即是443端口),不支持自定义端口,而443端口是已经占用的啦,所以借用nginx反向代理的方式监听websocket自定义端口从而实现默认端口(443)问题。
反向代理方式实现
location /websocket { # websocket可以随意修改(自定义值)
proxy_pass http://127.0.0.1:9502; # 9502改为你在swoole中监听的端口
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
再者nginx上部署SSL证书即可
访问链接:wss://域名/websocket # websocket即为上一步自定义修改的值保持一致