на моєму сервері працює сервер Apache. Поки що все гаразд. Але якщо я намагаюся змусити SSL через .htaccess, Chrome / Firefox говорить мені: "цей сайт перенаправляє петлі" або щось подібне.
Я використовував цей код, знайдений тут @ SO:
RewriteEngine on
First rewrite any request to the wrong domain to use the correct one (here www.)
RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Now, rewrite to HTTPS:
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}
Chrome каже: ERR_TOO_MANY_REDIRECTS
Як це вирішити?
Відповіді:
0 для відповіді № 1Я досягла цього результату, встановивши сервер http (а не https) у власний каталог сайту, який містив наступний index.php:
<?php header("Location: https://".$_SERVER["SERVER_NAME"]); ?>
Я розумію, що це не використовує переписування apacheособливості (я фактично вже використовую перезапис для чогось іншого, і робити це таким чином буде мати складні речі), і, очевидно, він "буде працювати тільки якщо ви також працюєте PHP, але це досить просте рішення. Сподіваюся, що це допоможе!
0 для відповіді № 2
Ваш SSL охоплює www.youdomain.com або просто вашдомен.com?
Якщо ви використовуєте www. Ви можете спробувати це у вашому .htaccess
RewriteCond% {HTTPS} увімкнено
Переписати% {HTTP_HOST} ^ www. (. *) $ [NC]
RewriteRule ^ (. *) $ https://%1/$ 1 [R = 301, L]