socketio 共用端口
socketio 是否可以与 web 服务共用一个端口?对于此问题,答案是肯定的。
借助反向代理实现共用
使用反向代理是解决此问题的一种简单方法。将 80 端口的 /socket.io/ 开头请求代理到原始的 9092 端口,其他路径的请求则转发到原始 80 端口的程序。
反向代理配置示例
以下是使用 nginx 实施反向代理的示例配置:
http {
server {
listen 8
0;
root /var/www/html;
location / { # 默认后端
proxy_pass http://localhost:9091;
}
location /socket.io/ { # socketio 后端
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://localhost:9092;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
}









