Я пытался использовать файл .htaccess для перенаправления http:// на https://
Я также пытался добавить www. перед доменным именем, если оно не написано.
Я использовал этот код в файле .htaccess

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
Options -Indexes

# Force use https for secure connections
# (as it appears on your SSL certificate)
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]

# Force use www in front of domain-name
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 ответ1

0

Благодаря Тайсону теперь у меня хорошо работает .htaccess файл
Вот код, который работал. Измените domain.com своим доменным именем.

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
Options -Indexes

# Always use www in the domain
RewriteCond %{HTTP_HOST} ^([a-z.]+)?domain\.com$ [NC]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .? http://www.%1domain.com%{REQUEST_URI} [R=301,L]

# Check if HTTPS is not used, then jump to HTTPS
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://www.domain.com/$1 [NC,R=301,L]

# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .