Набор классных редиректов: https, www. Как проверить редирект

Редиректы на https

Нужно проверить редирект?!

Переходите сюда

Почему стал нужен редирект на https?!

С новыми требованиями Google многим начал требоваться редирект на https, но не у всех получается воспользоваться, ввиду различных причин. Я довольно часто встречался с этой проблемой на различных сайтах 1C-Битрикс, да и на WordPress это стандартная ситуация.

Куда писать код редиректа

Как правило, в корне CMS лежит файл с именем .htaccess. Если его нет, то просто создайте.      Между строками <ifModule mod_rewrite.c> и </IfModule> напишите ваш код. Редирект следует писать перед остальными перенаправления вашей CMS

Простой редирект на https


RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Этот редирект перенаправит ваш сайт на https без каких — либо проблем.

Редирект на https c www и без www


RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https [OR]
RewriteCond %{HTTP_HOST} ^www.example.ru$ [NC]
RewriteRule ^(.*)$ https://example.ru/$1 [R=301,L]

Где example.ru — это адрес вашего сайта

Перенаправление с нескольких доменов на один

Зачем это нужно и для чего использовать.

Если ваш сайт имеет несколько доменов, но вы хотите их все перенаправить на один, то этот редирект для вас. Данный редирект понадобился когда я занялся SEO — оптимизацией одного сайта. Из-за того, что у него было несколько доменов, была бешенная перелинковка и имелось 80000 ссылок сайта на самого себя. Ни одна система слежения ссылочной массы не могла показать мне сколько действительно доноров ссылается на этот сайт. Да и когда некачественные ссылки помогали раскрутке сайта?! А это действительно были некачественные ссылки, потому что страницы трафика не имели и были анкорными.

Сам код.


RewriteEngine On
RewriteCond %{HTTP_HOST} !^(.*)example.ru.*$
RewriteRule ^(.*)$ http://example.ru/$1 [R=301,L]

example.ru — это адрес того сайта, на который нужно сослать все домены. Для тех кто в «танке» ещё раз скажу, что этот код будет работать только если все домены будут привязаны к одной и той же папке на хостинге.

Как проверить редирект?!

Да очень просто! на сайте htaccess tester. Работает это так. В первой строке вы пишите адрес, на котором вы проверяете перенаправление, т.е. по какому адресу будет обращаться клиент. Во второй строке вы пишите ВЕСЬ код, который есть между строками <ifModule mod_rewrite.c> и </IfModule>. Я обращаю внимание на слово весь.

Если вы не уверены в своём редиректе, не поленитесь проверить его. Разные хостинги по — разному относятся к ошибкам в редиректах, иногда можно даже «уронить» сайт. Что я тоже делал не раз. Пожалуй только на бегете довольно лояльно относятся к перерасходу ресурсов сервера.