1. 程式人生 > 實用技巧 >nginx轉發處理websocket請求

nginx轉發處理websocket請求

Nginx nginx.conf

location /v2
{
    try_files /nonexistent @$http_upgrade;
}
location @websocket {
    proxy_redirect off;
    proxy_pass http://127.0.0.1:10000;#代理這個ws連結
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $http_host;
}
location @ {
    root  /www/wwwroot/xxxxx.xxx.com;
    index index.php index.html index.htm default.php default.htm default.html;
}

OpenResty nginx.conf

location /v2
{
    try_files /nonexistent @$http_upgrade;
}
location @websocket {
    proxy_redirect off;
    proxy_pass http://127.0.0.1:10000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $http_host;
}
location @ {
    default_type application/json;
    content_by_lua_block {
        ngx.say('{"time":'..os.time()..'}')
    }
}

OpenResty直接透傳

location / {
    proxy_pass http://127.0.0.1:10000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $http_upgrade;
    proxy_set_header Host $http_host;
    content_by_lua_block {
        ngx.say('{"time":'..os.time()..'}')
    }
}