小程的小马同学 2019-04-12 15:52 采纳率: 25%
浏览 873

nginx配置了WebSocket 谷歌浏览器会报404.

用域名访问项目没问题,用域名访问项目WebSocket功能谷歌浏览器就报
WebSocket connection to 'ws://sodb.qdairport.com/qdsodb/websocket/admin' failed: Error during WebSocket handshake: Unexpected response code: 404
用ip加端口访问项目WebSocket功能可以正常连接上
nginx配置文件

#user nobody;
worker_processes 1;

events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
#tcp_nopush on;

#keepalive_timeout  0;
keepalive_timeout  65;
#设置允许上传内容大小
client_max_body_size 200M;
client_body_buffer_size 128k;
gzip  on;

#配置域名和ip
upstream sodb.qdairport.com { 
  server  10.48.1.16:8080 weight=1;  #权重为1
  server  10.48.1.17:8080 weight=1;   #权重为2
} 

server {
     listen       80;
    server_name  sodb.qdairport.com;
    location / { 
    proxy_pass        http://sodb.qdairport.com; 
    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_connect_timeout       3;
proxy_read_timeout          3600;
proxy_send_timeout          60;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
} 
}

}


  • 写回答

1条回答 默认 最新

  • qq_20747071 2019-04-12 17:10
    关注

    http {
    #map块为websocket必须配置
    map $http_upgrade $connection_upgrade {
    default upgrade;
    '' close;
    }

    server {
    listen 80;
    #配置websocket地址
    location /{
    proxy_pass http://123.0.1:8081;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    }
    }
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题