Welcome! Log In Create A New Profile

Advanced

NGINX as a WebSocket Proxy

Gena Makhomed
February 29, 2024 02:32PM
Здравствуйте, All!

В статье https://www.nginx.com/blog/websocket-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;
proxy_set_header Host $host;
}
}
}

При этом в других статьях - для включения keep-alive
рекомендуется такой код:

proxy_http_version 1.1;
proxy_set_header Connection "";

для того, чтобы режим Keep-alive работал между nginx и backend.

Keep-alive connections are enabled by default in HTTP/1.1 while not in
HTTP/1.0. HTTP/1.0 was designed to close the connection after every
request between client and server.

может быть в статье на сайте рекомендуется не самая оптимальная
настройка и лучше было бы сделать так:

# cat /etc/nginx/nginx.conf

http {

map $http_upgrade $connection_upgrade {
default Upgrade;
'' '';
}

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
}


в таком случае и вебсокеты смогут работать по любому урлу
и при этом keep-alive подключения к backend тоже будут работать.

upstream node {
server 127.0.0.1:3000;
keepalive 64;
}


ведь нет же никаких причин разрешать вебсокеты только
по какому-то явно прописанному в конфиге урлу,
а по всем остальным урлам - запрещать?

--
Best regards,
Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

NGINX as a WebSocket Proxy

Gena Makhomed February 29, 2024 02:32PM

Re: NGINX as a WebSocket Proxy

VictorIvanov March 05, 2024 07:55AM

Re: NGINX as a WebSocket Proxy

Илья Шипицин March 06, 2024 04:04AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 267
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready