nginx wss websocket配置 400错误记录

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

websocket配置项是对的,但是从http的80端口换成https的443端口,websocket无法使用

这是一个将443端口映射到8080端口的路径映射,包含websocket配置,https协议配置好了,结果是ws协议的websocket可以连接上,wss协议请求响应400,无法连接

    location /projectName{
        proxy_pass   http://127.0.0.1:8080/projectName;
        proxy_set_header X_CUSTOM_HEADER $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        #proxy_buffering off;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection “upgrade”;
        #proxy_connect_timeout 300s;
            
    }

看出问题来了吗?proxy_set_header Connection “upgrade”,这里引号是中文的,但是在未使用https协议的时候,websocket也是可以用的,换成英文引号的问题解决proxy_set_header Connection "upgrade"

同样的,有时候遇到一些莫名其妙的问题,看看是不是中文空格或是中文引号引起的,可以使用查找功能,看看是否有中文空格和中文引号

转载于:https://my.oschina.net/u/1428688/blog/3004981

你可能感兴趣的:(nginx wss websocket配置 400错误记录)