nginx 配置wss

1,649 阅读1分钟

这是我在项目中遇到的一个问题,仅此记录一下,wss配置

1.页面域名端口是 https://domain:8883

2.实际 ws 服务器地址 http://10.0.43.15:6612

3.创建 websocket:new Websocket("https://domain:8883/asr/zh/socket")

4.代理配置

location /asr/zh/socket {
  proxy_pass http://10.0.43.15:6612;  #实际 ws 服务器地址
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "upgrade";
}

5.谷歌审查元素查看 ws 是否连接成功

具体 server 配置如下:

#server {
    listen 8883;
    server_name localhost;
    ssl on;
    ssl_certificate D:/html/nginx/crt/my.crt;
    ssl_certificate_key D:/html/nginx/crt/my.key;
    ssl_session_timeout  5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    ssl_ciphers  HIGH:!aNULL:!MD5;
    #ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; 
    ssl_prefer_server_ciphers   on;
    root D:/PROJECT/percent_record_demo;
	index  index.html index.htm; 
    location / {
        index  index.html index.htm;
        add_header 'Access-Control-Allow-Origin' *;
    }
    location /apis {
			rewrite ^.+apis/?(.*)$ /$1 break;
            include uwsgi_params;
			proxy_pass http://192.168.162.60:8399;
    }
	
	#wss
	location /asr/zh/socket {
		proxy_pass http://10.0.43.15:6612;  #实际ws服务器地址
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "upgrade";
	}
	
	#wss
	location /asr/arb/socket {
		proxy_pass http://10.0.43.15:6612;  #实际ws服务器地址
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "upgrade";
	}
	
	#wss
	location /asr/kaz/socket {
		proxy_pass http://10.0.43.15:6612;  #实际ws服务器地址
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "upgrade";
	}
	
	#wss
	location /asr/ru/socket {
		proxy_pass http://10.0.43.15:6612;  #实际ws服务器地址
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
		proxy_set_header Connection "upgrade";
	}
}