Перенаправлення SSL на екземпляр EC2 за балансиром навантаження, що закінчується


11

Я намагаюся перенаправити всі URL-адреси на https у веб-додатку.

У мене є екземпляр ec2 за пружним балансиром навантаження. SSL припиняється на балансирі навантаження.

Будь-які спроби перенаправлення закінчуються даючи мені знайоме "ця сторінка запитує таким чином, який ніколи не завершиться".

Балансир навантаження направляє 443 і 80 на порт 80 на примірник.

Це те, що я маю у своєму .htaccess.

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

Хтось має ідею, як це досягти? Ласкаво дякую,

Відповіді:


17

неперевірений .. але я намагаюся це

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


1
Так! Дуже дякую. Зараз я боровся з цим. Цінується. Будь ласка, підкажіть цю відповідь, якщо ви знайдете у цьому допомогу. Дякую ...
rix

зв’язок розірваний
Білл Розмус

Рішення все ще працює. Деякі пояснення можна знайти тут: docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/…
Тим

Працювали для мене. Протестований сьогодні
Бен Сінклер

0

Відповідь Майка здебільшого правильна, але важливо зазначити, що балансиру навантаження все одно потрібно буде виконувати свою перевірку стану здоров'я, щоб переконатися, що екземпляр ec2 все ще живий і здоровий. Це можна зробити за допомогою додатковогоRewriteCond

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

... де alive.htmlназва вашого файлу перевірки здоров’я.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.