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

Принудительный SSL не работает ни с Joomla, ни с htaccess

У нас есть несколько сайтов на Joomla. Ниже приведены подробности.

Я установил переменную Live Site в конфигурации Joomla на https://sub.mydomain.co.in. Когда я просматриваю сайт с https://sub.mydomain.co.in или http://sub.mydomain.com, он отлично работает. Но я бы хотел принудительно направить все запросы на https: //.

Я пытался добиться этого с помощью

RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Но ничего не работает, когда я использую один из этих двух браузеров, говорит Эта страница имеет цикл перенаправления. Я еще немного покопался, чтобы посмотреть, происходит ли перенаправление из каких-либо других мест, например.

Но нет такого кода / плагина, который вызывает цикл перенаправления.

Кто-нибудь может помочь?

Заранее спасибо.

Вы проверяете неправильную переменную в своем условии перезаписи.

Поскольку вы используете Amazon Elastic Load Balancer для завершения сеансов SSL, Apache в вашем экземпляре не знает, что они поступили через HTTPS, и не устанавливает HTTPS.

ELB устанавливает заголовок X-Forwarded-Proto к http или https в зависимости от того, как был получен запрос. Вместо этого вы можете проверить этот заголовок, чтобы выполнить перенаправление.

RewriteEngine on 
RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]