Как перенаправить https://example.com/ на https://www.example.com/ - PullRequest
4 голосов
/ 01 марта 2011

У меня есть этот код в моем .htaccess файле, как показано ниже.

RewriteEngine On
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Он был добавлен для перенаправления http на https, поэтому весь сайт теперь находится в версии https.

Теперь я хочу перенаправить с не-www на www.Когда я набираю example.com, меня перенаправляют на https://www.example.com/

Как мне это сделать с файлом .htaccess?

Ответы [ 4 ]

6 голосов
/ 09 ноября 2012

Перенаправление без SSL:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com
RewriteRule ^(.*)$ http://www.domain.com$1 [R=permanent,L]

Перенаправление SSL:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com
RewriteRule ^(.*)$ https://www.domain.com$1 [R=permanent,L]
0 голосов
/ 08 ноября 2016

Как насчет этого, поскольку https использует порт 443

RewriteCond %{SERVER_PORT} 443
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
0 голосов
/ 21 февраля 2016

У меня может быть решение:

RewriteEngine  on

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.[domain].com%{REQUEST_URI} [R=301,L,NE]

Замените [домен] и расширение вашего собственного домена. Скажи мне, если это не сработает.

0 голосов
/ 01 марта 2011

Вставьте следующие строки в ваш файл .htaccess и замените mydomain.com доменом, который вы хотите перенаправить.

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.){0,1}mydomain.com$ [OR]
RewriteCond %{HTTPS_HOST} ^(www\.){0,1}mydomain.com$
RewriteRule ^(.*)$ https://www.mydomain.com/$1 [R=301,L]

Чтобы это работало, вам придется удалить существующие записи, которые вы упоминаете в своем вопросе, из файла .htaccess

...