1 upstream mqttServer { 2 server mqttserverip1:8882 weight=1; 3 server mqttserverip1:8882 weight=1; 4 #check interval=3000 rise=2 fall=5 timeout=1000; 5 } 6 7 server { 8 listen 443 ssl; 9 server_name localhost;10 ssl on; //如果是Linux版本nginx需要配置此項,Windows版本nginx不需要配置11 ssl_certificate E:/project/nginx-1.13.6/certfile/pc.crt;12 ssl_certificate_key E:/project/nginx-1.13.6/certfile/pc.key;13 ssl_session_cache shared:SSL:1m;14 ssl_session_timeout 5m;15 ssl_ciphers HIGH:!aNULL:!MD5;16 ssl_prefer_server_ciphers on;17 location /mqtt {18 proxy_pass http://mqttServer;19 proxy_http_version 1.1;20 proxy_set_header Upgrade $http_upgrade;21 proxy_set_header Connection "upgrade";22 }23 }
Websocket使用 ws
或 wss
的統一資源標志符,類似于 HTTP
或 HTTPS
,其中 wss
表示在 TLS 之上的 Websocket ,相當于 HTTPS 了。如:
ws://example.com/chatwss://example.com/chat
默認情況下,Websocket 的 ws 協議使用 80 端口;運行在TLS之上時,wss 協議默認使用 443 端口。其實說白了,wss 就是 ws 基于 SSL 的安全傳輸,與 HTTPS 一樣樣的道理。
如果你的網站是 HTTPS 協議的,那你就不能使用 ws://
了,瀏覽器會 block 掉連接,和 HTTPS 下不允許 HTTP 請求一樣。
需要做好CA證書,證書需要寫入指定的域名,不然會有問題。