2016-03-28 5 views
0

У меня есть что-то вроде этогоHtaccess перенаправить не-WWW WWW и к НТТРУ HTTPS

RewriteEngine on 
RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R,L] 

Он отлично работает, перенаправляет все http://www.example.com к https://www.example.com. Но теперь я хочу, чтобы он перенаправлял все example.com на https://www.example.com. Я пробовал:

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

RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R,L] 

И это не удалось. Что я должен добавить?

ответ

0

Вы можете сделать оба переназначения в одном правиле:

RewriteEngine on 

RewriteCond %{HTTP_HOST} !^www\. [NC,OR] 
RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] 
RewriteRule^https://www.%1%{REQUEST_URI} [R=302,NE,L] 
+0

спасибо, но он не работал :( –

+0

Он отлично работает на моей Apache. Убедитесь, что это очень первое правило, и вы полностью очистить кэш браузера. – anubhava

+0

я пытался на другом браузере и мобильный веб-браузере также. Кстати, это не имеет значения, какой сервер я использую, правильно? Я использую openshift для размещения моего приложения. –

0

Используя следующий код в файле .htaccess автоматически перенаправляет посетителей на версии HTTPS вашего сайта:

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

или помощь с этим сайтом. В последнее время я получаю ту же проблему, что и проблема. https://www.themeconfig.com/wordpress-basic-services/

+0

спасибо, но я уже перенаправляю https, теперь я хочу перенаправить не-www на w ww также –

Смежные вопросы