1. 程式人生 > >NGINX作為WebSocket代理

NGINX作為WebSocket代理

  • 伺服器列印初始"Server started"訊息,然後在埠8010上偵聽,等待客戶端連線到它。當它收到一個客戶端請求時,它迴應它,併發送一個訊息回到客戶端包含它收到的訊息。要使NGINX代理這些請求,我們建立以下配置:

    http {
        map $http_upgrade $connection_upgrade {
            default upgrade;
            '' close;
        }

    upstream websocket { server 192.168.100.10:8010; }

    server { listen 8020; location / { proxy_pass http://websocket; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } } }

    NGINX偵聽埠8020,並向後端WebSocket伺服器傳送代理請求。proxy_set_header指令使NGINX妥善處理WebSocket協議。