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

Перенаправление SSL на экземпляр EC2 за завершающим балансировщиком нагрузки SSL

Я пытаюсь перенаправить все URL-адреса на https в веб-приложении.

У меня есть экземпляр ec2 за эластичным балансировщиком нагрузки. SSL прерывается на балансировщике нагрузки.

Любые попытки перенаправления в конечном итоге дают мне знакомое «эта страница запрашивает так, что никогда не будет завершена».

Балансировщик нагрузки перенаправляет 443 и 80 на порт 80 экземпляра.

Это то, что у меня есть в моем .htaccess.

RewriteCond %{X-FORWARDED-PROTO} !=on  
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Кто-нибудь знает, как это сделать? Доброе спасибо,

непроверено .. но я пробую это

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#x-forwarded-proto

МайкОтвет в основном правильный, но важно отметить, что балансировщику нагрузки все равно необходимо будет выполнить процедуру проверки работоспособности, чтобы убедиться, что экземпляр ec2 все еще жив и работает. Это можно сделать с помощью дополнительных RewriteCond

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{REQUEST_URI} !^/alive\.html$
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

...где alive.html это имя вашего файла проверки здоровья.