Задать вопрос
@Cyber-Man

Как получить автоматически значение бекенда в nginx (например из listen)?

Ситуация следующая.. есть сотни сайтов, проксирует их nginx. В каждой секции server подключен файл, дабы была возможность быстро прописывать конфиги для всех сразу.. До сей поры прописывал различные условия, всё было хорошо... пока не наткнулся на location и proxy_pas.

Дело в том, что proxy_pas требует прописать бекенд. В моем случае для сотен сайтов прописаны разные бекенды в виде IP-адресов. Эти IP, например, совпадают с listen в секции server. Если значение proxy_pas не совпадает с listen, то выдает 404 для указанного location.

Каким образом можно автоматически определить backend соответствующий сайту..может как-то из listen значение IP можно вытащить..?

Вот код, который инклудится к каждому сайту:

location ~ ^/(wp-admin|wp-login\.php|admin|administrator) {
                        limit_req  zone=wp burst=4 nodelay;
                        proxy_pass http://IP:81;
                        proxy_redirect http://IP/ /;
                        proxy_set_header Host $host;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
}
  • Вопрос задан
  • 405 просмотров
Подписаться 3 7 комментариев
Подписчики вопроса 3 К ответам на вопрос (3)