Я пытаюсь настроить nginx как обратный прокси для нескольких серверов в моей локальной сети. Они должны выходить в мою WAN с разными поддоменами.
В отличие от подхода, описанного в Используйте Nginx в качестве обратного прокси для нескольких серверов Я хочу использовать сокет UNIX для межпроцессного взаимодействия на моем сервере.
На основе
моя конфигурация будет выглядеть примерно так, как показано ниже, не так ли? Чтобы основной файл оставался тонким, я хотел бы передать на аутсорсинг location
блоки.
Я нахожу все в Интернете более или менее, но ничего о том, как я могу связаться с серверами в локальной сети? Нужно ли мне настраивать локальный DNS-сервер, как описано в Локальный запуск DNS для домашней сети?
основной файл прокси
server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
#include letsencrypt.conf;
server_app1 app1subdomain.domain.eu;
include app1location.conf
}
server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
#include letsencrypt.conf;
server_app2 app2subdomain.domain.eu;
include app1location.conf
}
app1location.conf (файл местоположения для прокси-сервера)
location / {
proxy_pass http://unix:/home/app1/app1.com.unix_socket;
proxy_set_header X-Real-IP $remote_addr; #Authorization
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_buffering off;
client_max_body_size 0;
proxy_read_timeout 36000s;
proxy_redirect off;
}
app2location.conf (файл местоположения для прокси-сервера)
location / {
proxy_pass http://unix:/home/app2/app2.com.unix_socket;
proxy_set_header X-Real-IP $remote_addr; #Authorization
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_buffering off;
client_max_body_size 0;
proxy_read_timeout 36000s;
proxy_redirect off;
}