У меня есть приложение, работающее на локальной виртуальной машине. На второй виртуальной машине запущен nginx как обратный прокси для этого приложения. Доступ к приложению напрямую или через локальный обратный прокси работает нормально.
Затем на контроллере домена работает второй обратный прокси-сервер, поскольку на моих локальных машинах есть только общедоступный IPv6.
Эта проблема: Доступ к сервису через прокси в DC в большинстве случаев вызывает очень медленную загрузку или 504 таймаута. Однако соединение клиента с установкой DC nginx работает нормально (этот nginx также обслуживает небольшой локальный файл html, работающий должным образом).
Оба сервера используют TLS только с действующими сертификатами (мне нужен зашифрованный трафик между прокси). Соединение между двумя серверами управляло скоростью 180 Мбит / с (в среднем) в Iperf с пингом 4-5 мс.
| Прикладная ВМ | <-IPv4 / 6- | Локальный прокси NGINX | <-IPv6- | Прокси-сервер DC NGINX | <-IPv4 / 6- | Клиент |
Любая помощь будет очень признательна, у меня нет идей
server {
client_max_body_size 2000M;
client_body_buffer_size 2000M;
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
ssl_certificate /etc/letsencrypt/live/domain.eu/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.eu/privkey.pem;
server_name _;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 1h;
add_header Strict-Transport-Security "max-age=17280000 ; preload";
location / {
proxy_set_header Host $host;
proxy_intercept_errors on;
proxy_connect_timeout 10;
proxy_pass http://aiz.domain.eu:3000;
}
error_page 501 502 503 504 /500.html;
location /500.html {
root /var/www/html/error;
}
error_page 404 /404.html;
location /404.html {
root /var/www/html/error;
}
}
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
ssl_certificate /etc/letsencrypt/live/domain.eu/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.eu/privkey.pem;
server_name _;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 1h;
location / {
proxy_set_header Connection "";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_pass https://haruhime.domain.eu;
proxy_intercept_errors on;
}
error_page 504 /504.html;
location /504.html {
root /var/www/error;
}
}
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
}
Небольшое примечание: haruhime.domain.eu - это запись AAAA моего локального NGINX aiz.domain.eu - это AAAA приложения (git)