Домен: aarohisilks.com
DNS: Cloudflare, запись, указывающая на IP моего прокси-сервера, режим SSL установлен на «Полный строгий»
Прокси-сервер (Nginx): завершает работу SSL, перенаправляет трафик на балансировщик нагрузки на порт 80.
Балансировщик нагрузки (Nginx): распределяет трафик на внутренние серверы.
Конфигурация прокси внутри моего прокси-сервер
/etc/nginx/sites-available/reverse-proxy.conf
Код: Выделить всё
# Temporary configuration for ACME challenge
server {
listen 80;
server_name ~^.*$;
location /.well-known/acme-challenge/ {
root /var/www/html;
allow all;
}
location / {
return 404;
}
}
#Redirect HTTP to HTTPS for all domains
server {
listen 80;
server_name ~^.*$;
return 301 https://$host$request_uri;
}
# SSL configuration for proxy subdomain
server {
listen 443 ssl;
server_name gateway.enlivendesigners.com;
ssl_certificate /etc/letsencrypt/live/gateway.enlivendesigners.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gateway.enlivendesigners.com/privkey.pem;
location / {
proxy_pass http://load_backend;
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;
}
}
# SSL configuration for staging subdomains
server {
listen 443 ssl;
server_name staging.aarohisilks.com;
ssl_certificate /etc/letsencrypt/live/staging.aarohisilks.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/staging.aarohisilks.com/privkey.pem;
location / {
proxy_pass http://staging_backend;
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;
}
}
# SSL configuration for production subdomains
server {
listen 443 ssl;
server_name aarohisilks.com;
ssl_certificate /etc/letsencrypt/live/aarohisilks.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/aarohisilks.com/privkey.pem;
location / {
proxy_pass http://load_backend;
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;
}
}
Код: Выделить всё
upstream load_backend {
#server 194.163.168.18; # Prod1 server
server 148.135.73.76; #loadbalncer
}
upstream staging_backend {
server 81.0.218.72; # Staging server
}
Код: Выделить всё
server {
listen 80;
server_name aarohisilks.com;
location / {
proxy_pass http://production_backend;
# ... (proxy headers)
}
}
Код: Выделить всё
upstream production_backend {
server 194.163.168.18;
server 194.163.166.206;
}
Прокси-сервер перенаправляет весь HTTP-трафик на HTTPS.
Это вызывает непрерывный цикл перенаправлений между Cloudflare и прокси-сервером. .
Я проверил, что внутренние серверы (194.163.168.18 и 194.163.166.206) работают правильно.
Также я отправил запрос только для прокси-сервера без какого-либо балансировщика нагрузки, я указываю IP-адрес своего сервера в исходящей конфигурации.
На моем реальном сервере с IP-адресами 194.163.168.18, 194.163.166.206 я установил киберпанель и использую киберпанель. Я размещаю сайты WordPress. Без балансировщика нагрузки сайт работает хорошо.
Есть ли какие-либо потенциальные изменения конфигурации, которые мне следует внести в настройки прокси-сервера, балансировщика нагрузки или Cloudflare?
Все порты открыты 443,80,22
Подробнее здесь: https://stackoverflow.com/questions/787 ... ction-loop