Инструменты пользователя

Инструменты сайта


flip:web:nginx_examples

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

flip:web:nginx_examples [2025/05/23 12:02] – создано flipflip:web:nginx_examples [2025/08/02 09:36] (текущий) flip
Строка 298: Строка 298:
 } }
 </code> </code>
 +
 +
 +===== Реверс прокси с веб сокетом =====
 +
 +<code>
 +server {
 +
 +    listen 8000 ssl;
 +    server_name example.com;
 +
 +    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
 +    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
 +
 +    # Опционально: улучшенные настройки SSL
 +    ssl_protocols TLSv1.2 TLSv1.3;
 +    ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';
 +    ssl_prefer_server_ciphers on;
 +
 +    location / {
 +        proxy_pass http://192.168.0.2:8001;
 +        proxy_set_header Host $host;
 +        proxy_set_header X-Real-IP $remote_addr;
 +        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 +        proxy_set_header X-Forwarded-Proto $scheme;
 +
 +        # Исправляем ссылки в ответах бэкенда
 +        proxy_redirect http://192.168.0.2:8001/ https://example.com:8000/;
 +    }
 +
 +    # Отдельный блок для WebSocket (/ws)
 +    location /ws {
 +        proxy_pass http://192.168.0.2:8001/ws;
 +
 +        # Обязательные настройки для WebSocket
 +        proxy_http_version 1.1;
 +        proxy_set_header Upgrade $http_upgrade;
 +        proxy_set_header Connection "upgrade";
 +        proxy_set_header Host $host;
 +        proxy_set_header X-Real-IP $remote_addr;
 +        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 +
 +        # Таймауты (опционально)
 +        proxy_read_timeout 86400s;  # Долгий таймаут для WS
 +        proxy_send_timeout 86400s;
 +    }
 +
 +}
 +</code>
 +
flip/web/nginx_examples.1748001720.txt.gz · Последнее изменение: 2025/05/23 12:02 — flip

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki