Файл htaccess работает для Chrome и IE, но на полпути в Firefox
Я пытался использовать файл.htaccess для перенаправления http:// на https://
Я также пытался добавить www. перед доменным именем, если оно не написано.
Я использовал этот код в файле.htaccess
Опции +FollowSymLinks
RewriteEngine On
RewriteBase /
Опции -индексы
# Принудительно использовать https для безопасных соединений
# (как указано в вашем SSL-сертификате)
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ Https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]
# Принудительное использование www перед доменным именем
RewriteCond %{HTTP_HOST}!^$
RewriteCond %{HTTP_HOST}!^ Www\. [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ Https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]
В Chrome и IE сайт открывается как положено
Всегда переходит на https://www.domain.com/, независимо от того, является ли входной адрес "www.domain.com" или "domain.com". Но в Firefox он работает правильно только тогда, когда адрес "domain.com"
Когда я размещаю "www.domain.com", браузер Firefox превращает его в
https://www.www.domain.com/
Извините, но я просто не могу найти логику, почему Chrome и IE так хорошо интерпретируют.htaccess, а Firefox делает это на полпути. Firefox - 41.0.2, кеш пуст, изменений нет. Я не догадываюсь, кто-нибудь может предложить решение?
1 ответ
Благодаря Тайсону теперь у меня хорошо работает файл.htaccess
Вот код, который работал. Измените domain.com своим доменным именем.
Опции +FollowSymLinks
RewriteEngine On
RewriteBase /
Опции -индексы
# Всегда используйте www в домене
RewriteCond %{HTTP_HOST} ^([az.]+)? Domain\.com$ [NC]
RewriteCond %{HTTP_HOST}!^ Www \. [NC]
RewriteRule.? http: //www.%1domain.com% {REQUEST_URI} [R = 301, L]
# Проверьте, не используется ли HTTPS, затем перейдите к HTTPS
RewriteCond %{SERVER_PORT}!^443$
RewriteRule ^(.*)$ Https://www.domain.com/$1 [NC, R = 301, L]
# Перенаправить косые черты...
RewriteRule ^ (. *) / $ / $ 1 [L, R = 301]
# Ручка переднего контроллера...
RewriteCond %{REQUEST_FILENAME}!-D
RewriteCond% {REQUEST_FILENAME}! -F
RewriteRule ^ index.php [L]