301 редирект через htaccess

229
10 марта 2018, 17:48

Здравствуйте. Подскажите, пожалуйста, как скорректировать файл .htaccess, чтобы:

1) При обращении к http://сайт.ru и http://www.сайт.ru открывался https://www.сайт.ru
2) При обращении к https://сайт.ru открывался https://www.сайт.ru
3) При обращении к http://www.сайт.ru/robots.txt этот адрес открывался без редиректа.

Текущий .htaccess выглядит следующим образом:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^сайт.ru$ [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^сайт.ru$ [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
Answer 1
Options +FollowSymLinks
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^сайт.ru$ [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^сайт.ru$ [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www.сайт.ru$ [NC]
RewriteCond %{REQUEST_URI} !^/robots.txt$ [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

В первом перенаправлении была ошибка.

Необходимо было выполнять редирект на https, был на http.

READ ALSO
Не растягивать flex по высоте

Не растягивать flex по высоте

Как отменить растягивание блока search-box?

256
Пишется undefined

Пишется undefined

Пишу простейшую задачу в JAVASCRIT, кажется все правильно написал, но на выходе получаю: количество дней undefined

201
Не работает обтекание слева

Не работает обтекание слева

Почему не работает обтекание слева для class="sidebar"

224