Как можно получить доступ к двум различным доменам на одном сервере, у которого один общий внешний IP-адрес?

Как настроить проксирование запросов с domen1.com на сайт, запущенный на 192.168.0.21:8088, и с domen2.com на сайт, запущенный на 192.168.0.22:8089, используя виртуальные машины с Nginx proxy server и Node.js?
  • 23 июня 2024 г. 12:21
Ответы на вопрос 2
Для достижения этой цели необходимо настроить виртуальные хосты Nginx, которые будут проксировать запросы с различных доменов на соответствующие сайты, запущенные на разных портах.

Вот пример конфигурации Nginx для такой задачи:

```nginx
server {
    listen 80;
    server_name domen1.com;
    
    location / {
        proxy_pass http://192.168.0.21:8088;
        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;
    }
}

server {
    listen 80;
    server_name domen2.com;
    
    location / {
        proxy_pass http://192.168.0.22:8089;
        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;
    }
}
```

Этот конфигурационный файл Nginx проксирует запросы с domen1.com на сайт, запущенный на 192.168.0.21:8088, и запросы с domen2.com на сайт, запущенный на 192.168.0.22:8089.

Не забудьте перезапустить Nginx после внесения изменений в конфигурационный файл.
Так и делаете - на 192.168.0.19 создаёте два серверных блока с proxy_pass на нужные хосты/порты. 

nginx.org/en/docs/http/ngx_http_proxy_module.html#...
Похожие вопросы