
외부 네트워크에서 액세스할 수 있어야 하는 두 개의 로컬 웹 앱이 있지만 외부 IP는 하나만 있습니다. 두 웹앱 모두 변경할 수 없는 443 포트를 사용합니다. 따라서 작업은 3차 도메인을 기반으로 들어오는 요청을 전달할 수 있도록 nginx를 구성하는 것입니다. 내 웹 앱이 192.168.1.55 및 192.168.1.65에 있다고 가정해 보겠습니다. 내 공용 IP는 9*.23*.15*.12이고 2개의 DNS A 항목 site1.example.com 및 site2.example.com을 구성했습니다. 둘 다입니다. 내 공개 IP에 매핑되었습니다. 내 이상적인 세계에서는 nginx가 $server_name = site1.example.com을 사용하여 들어오는 모든 요청을 192.168.1.55로, $server_name = site2.example.com을 192.168.1.65로 전달하도록 하고 싶습니다. 어떻게 달성할 수 있는지 알려주세요. 현재는 웹 앱 중 하나로 단순 전달만 구성할 수 있었습니다.
server {
listen 443 ssl http2;
server_name site1.example.com;
ssl on;
ssl_certificate /etc/letsencrypt/live/blog.zeroxzed.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/blog.zeroxzed.ru/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
location /.well-known/acme-challenge/ {
root /web/sites/example.com/www/;
}
location / {
proxy_pass https://192.168.1.55;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}