Files

67 lines
1.9 KiB
Plaintext

# Прокси WebSockets
# https://www.nginx.com/blog/websocket-nginx/
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
# Сервер WebSocket слушает здесь
upstream websocket {
server node:8080;
}
# Конфигурация сайта
server {
listen 80;
server_name _;
# Установите таймауты прокси для приложения
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
send_timeout 600;
# Сначала подключаются прокси-сервер WebSocket
location /v2/inv {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
# Сервер PushTX отдельный, поэтому сначала прокси
location /v2/pushtx/ {
proxy_pass http://node:8081/;
}
# Сервер трекера отдельный, поэтому сначала прокси
location /v2/tracker/ {
proxy_pass http://node:8082/;
}
# Прокси-запросы к инструменту обслуживания
location = /admin/conf/index.js {
proxy_pass http://node:8080/static/admin/conf/index-mainnet.js;
}
location /admin/ {
proxy_pass http://node:8080/static/admin/;
}
# Проксировать все остальные запросы версии 2 на сервер учетных записей.
location /v2/ {
proxy_pass http://node:8080/;
}
# Перенаправить луковый адрес в инструмент обслуживания
location = / {
return 301 /admin;
}
# Обслуживать оставшиеся запросы
location / {
return 200 '{"status":"ok"}';
add_header Content-Type application/json;
}
}