Перенаправить запрос по ссылке на другой сервер с тем же хостом (nginx)
Недавно возникла ситуация, когда из-за временных проблем на сайте нужно было перевести главную страницу на другой сервер, а все остальные страницы раздавать со старого. Так же, нельзя было менять настройки старого сервера. И всё это на сайте с ssl сертификатами. Для этого я перенаправил dns на новый сервер и на новом сервере прописал следующий конфиг в nginx.
server { listen 80; listen 443 ssl; server_name example.com www.example.com; location = / { rewrite ^/$ https://new.example.com redirect; } location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_pass https://111.111.111.111:443; } ssl_certificate /home/example.bundle; ssl_certificate_key /home/example.key; }
Что мы имеем в итоге:
Клиент заходя на главную страницу - перенаправляется на другой домен, а заходя на страницу отличную от главной - переходит на старый сервер с сохранением доменного имени.
Надеюсь это кому-то поможет.