You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 2
Next »
Конфигурация публичного веб-сервера
upstream iqchannels-public {
server 127.0.0.1:3001;
}
server {
listen 80;
server_name iqchannels.mydomain.ru
client_max_body_size 10m;
// Постоянные HTML5 SSE соединения для уведомлений о новых сообщениях.
location /public/api/v1/sse {
access_log /var/log/nginx/iqchannels-public.access.log;
error_log /var/log/nginx/iqchannels-public.error.log;
proxy_pass http://iqchannels-public;
proxy_http_version 1.1;
proxy_buffering off;
proxy_cache off;
chunked_transfer_encoding off;
proxy_read_timeout 600;
proxy_connect_timeout 30;
proxy_set_header Connection '';
proxy_set_header Host $http_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;
add_header Pragma "no-cache";
add_header Cache-Control "private, must-revalidate";
}
// Публичное REST API.
location /public {
access_log /var/log/nginx/iqchannels-public.access.log;
error_log /var/log/nginx/iqchannels-public.error.log;
proxy_pass http://iqchannels-public;
proxy_redirect default;
proxy_read_timeout 30;
proxy_connect_timeout 30;
proxy_set_header Host $http_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;
add_header Pragma "no-cache";
add_header Cache-Control "private, must-revalidate";
}
}
Конфигурация внутреннего веб-сервера
upstream iqchannels-internal {
server 127.0.0.1:3002;
}
server {
listen 80;
server_name iqchannels-internal.mydomain.ru
client_max_body_size 10m;
// Вебсокет-соединения для уведомлений операторов о новых сообщениях.
location /api/v1/ws {
access_log /var/log/nginx/iqchannels-internal.access.log;
error_log /var/log/nginx/iqchannels-internal.error.log;
proxy_pass http://iqchannels-internal;
proxy_http_version 1.1;
proxy_buffering off;
proxy_cache off;
proxy_read_timeout 600;
proxy_connect_timeout 30;
chunked_transfer_encoding off;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $http_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;
add_header Pragma "no-cache";
add_header Cache-Control "private, must-revalidate";
}
// Панель управления, рабочее место оператора, внутренее REST API.
location / {
access_log /var/log/nginx/iqchannels-internal.access.log;
error_log /var/log/nginx/iqchannels-internal.error.log;
proxy_pass http://iqchannels-internal;
proxy_redirect default;
proxy_read_timeout 30;
proxy_connect_timeout 30;
proxy_set_header Host $http_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;
add_header Pragma "no-cache";
add_header Cache-Control "private, must-revalidate";
}
}