小编的一直播项目,基本于node,websocket.io开发的实时聊天,因原来是http连接服务器端口正常,后改为https连接不上,无法正常聊天。踩过很多坑现做一个笔记。
实现我们只要在nginx中实现443端口即https的nginx反向代理到http即可,说得有点绕,直接贴代码,希望能够帮助遇到同样问题的兄弟。
#加上这一句socket.io的nginx反向代理即可正常连接。
location /socket.io/ {
proxy_pass http://127.0.0.1:3000/socket.io/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
贴图如下: