Назад | Перейти на главную страницу

Как я могу перенаправить / перенаправить http на общедоступный IP-адрес с помощью nginx?

У меня есть домен example.com с записью DNS A, указывающей на общедоступный ip x.x.x.x.
Мне нужно получить все запросы http и https с этого сервера и перенаправить этот трафик на другой общедоступный IP-адрес y.y.y.y.
Есть идеи, как я могу это сделать?
Я читал о перенаправлении Nginx, но не знаю, правильный ли это способ и можно ли это сделать.
PD. У меня есть запись DNS A для www.example.com, указывающая на yyyy, проблема с example.com, потому что я не могу изменить DNS-запись, чтобы указать на ip yyyy, потому что это мешало работе почтовой службы с сервера с адресом xxxx .

Вы можете использовать поддомены, если у вас есть доступ к конфигурации DNS:

www.example.com.    IN  A   y.y.y.y
mail.example.com.   IN  A   x.x.x.x

Если нет, используйте nginx (или другой инструмент) для перенаправления трафика.

Вы будете перенаправлять HTTP не на IP-адрес, а на имя хоста. Как у вас уже есть www.example.com указывая на правильный IP-адрес, это должно быть легко. В этот день я предполагаю, что вы используете TLS, поэтому этот пример для Nginx перенаправляет оба http:// и https://example.com к канонический адрес субдомена https://www.example.com.

server { 
    listen 80; 
    listen 443 ssl; 
    server_name example.com; 
    return 301 https://www.example.com$request_uri; 
}