Как перенаправить входящие запросы от domain.com на www.domain.com через HTTP и HTTPS, используя .htaccess? - PullRequest
0 голосов
/ 24 августа 2009

У меня есть скрипт:

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

Переписать правило для перенаправления / старого на / новое

RewriteCond %{REQUEST_URI} ^/old$
RewriteRule   . /new [L,R=301]

Кто будет перенаправлять http://example.com на http://www.example.com,, но хотел бы, чтобы этот скрипт работал так же, если пользователь запрашивает URL-адрес через HTTPS? Кажется, я нигде не могу найти решение ... = /

У кого-нибудь есть идеи?

Спасибо

Ответы [ 4 ]

1 голос
/ 24 августа 2009

Похоже, что это не может быть сделано в нашем случае .... очевидно, потому что сертификат должен сначала быть принят браузером.В случае, если он не принят, перенаправление не будет разрешено из-за сообщения «предупреждение» браузера.

http://www.webhostingtalk.com/showthread.php?t=885150

0 голосов
/ 16 апреля 2014

У меня был такой же случай, мой сертификат был для domain.com, а не www.domain.com. Что произойдет, если пользователь введет https://www.domain.com, он перейдет на страницу ошибок SSL нашего сервера, если пользователь будет настаивать на переходе на эту страницу. то, что я сделал, добавило этот тег в раздел заголовка HTML страницы с ошибкой (расположение страницы с ошибкой зависит от сервера):

<meta http-equiv="refresh" content="0; url=http://domain.com/" />

Это перенаправит пользователя на domain.com. Делать это не рекомендуется, но если вы пока не можете позволить себе подстановочный сертификат, это быстрый обходной путь.

0 голосов
/ 24 августа 2009
RewriteCond %{HTTPS} =on
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ https://www.domain.com/$1 [L,R=301]

RewriteCond %{HTTPS} =off
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
0 голосов
/ 24 августа 2009

Используйте это правило:

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.example.com%{REQUEST_URI} [L,R=301]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...