Настроить
У меня есть два экземпляра приложения rails, запущенных в Opsworks Layer. Я использую Route 53 и ELB для маршрутизации трафика на свой уровень.
Задача
Чтобы перенаправить трафик с чистого домена на мой домен www. Chicken.com -> www.chicken.com
Что я пробовал
Я изменяю свою конфигурацию nginx (в одном экземпляре), чтобы решить эту проблему. Я добавил следующее:
server {
listen 80;
server_name chicken.com;
return 301 $scheme://www.chicken.com$request_uri;
}
... rest of config here
Результат
Экземпляр больше не поражается по его IP.
ELB пометил экземпляр, который я изменил, как «Не обслуживаемый», так как он больше не может быть доступен по IP (проверка работоспособности не выполняется).
Вопрос
Как я могу перенаправить голые домены на www-домены, не теряя при этом работоспособности ELB?
Вам нужно настроить что-то, что будет возвращать 2xx при проверке работоспособности, в настоящее время 301 заставляет ELB думать, что он не работает, вы можете поставить что-то вроде этого
server {
listen 80;
server_name chicken.com;
location ^~ /health {
proxy_pass http://my_proxy;
}
location / {
return 301 $scheme://www.chicken.com$request_uri;
}
}
server {
listen 80;
server_name www.chicken.com;
location / {
proxy_pass http://my_proxy;
}
}