Redirect 301

Опубликовано: 9 июня 2014 / Обновлено: 15 января 2018
Раздел(ы): Поисковая оптимизация
Просмотры: 1759
Комментарии: 0

301 редирект используется когда нужно перенаправить посетителя по новому адресу. 301 — это ответ сервера при обращении к нему. Который означает, что адрес по которому обратились был изменен навсегда (moved permanently). В результате вы как посетитель должны получить какой-то новый конечный адрес. И теперь все, зашедшие через браузер, а так же поисковые боты (роботы) будут перенаправляться по новому адресу.

При этом, для поисковиков все свойства старого адреса (страницы) будут переданы новому URL. Так же произойдет и так называемая склейка старого и нового адресов: при которой параметры PageRank от Google и тИЦ от Yandex, а также вес страницы и ссылочный вес старого адреса будет передан новому URL.

Переадресацию можно выполнить несколькими способами, в зависимости от установленного программного обеспечения. То есть директивами Web-сервера Apache в файле .htaccess в том числе с участием модуля mod_rewrite, либо с помощью скриптов PHP, JAVA, PERL, ASP и т.д., отправляя клиенту необходимые заголовки.
А в популярную CMS MaxSite функция редиректа встроена с помощью плагина и перенаправлением можно управлять прямо из панели администратора.
Чаше всего используются два редиректа 301 и 302. Где 302 — это временный редирект, а 301 — постоянный.
Самый частый случай использования 301 редиректа — это перенаправление посетителей с www адреса сайта на вариант без www (www.moonback.ru -> moonback.ru).

Редирект 301 в .htaccess

Большинство сайтов в интернете работают на вэб-сервере Apache, поэтому рассмотрим настройку редиректа 301 в самом массовом универсальном виде. А именно в файле .htaccess. Который расположен в корне вашего сайта.
Для настройки редиректа с www домена на домен без www в код файла .htaccess необходимо добавить нижеследующие строки:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

где,
RewriteCond обозначаем условие, при совпадении с которым будет выполнено правило RewriteRule. С помощью регулярных выражений задаются шаблоны строк.
Метасимволы для задания групп символов или «меток» в шаблоне
^ — метка начала строки,
$ — метка конца строки,
! – отрицание,
\ — экранирующий слеш, позволяет считать следующий за ним метасимвол обычным символом,
. – точка, обозначает любой символ, но только один,
() – группировка.
Модификаторы ставятся после обычных символов, метасимволов или их групп и расширяют возможности использования шаблонов:
? — символ повторяется 0 или 1 раз,
* — Повторяется от 0 до 65536 раз,
+ — Повторяется от 1 до 65536 раз.
Флаги определяют дополнительные опции для данного правила и перечисляются в квадратных скобках через запятую:
NC — (nocase) отключает проверку регистра символов.
R — (redirect) останавливает процесс преобразования и возвращает результат браузеру клиента как редирект на данную страницу (302, MOVED TEMPORARY). С данным флагом можно указать другой код результата, например R=301 возвратит редирект с кодом 301 (MOVED PERMANENTLY).
L — (last) останавливает процесс преобразования, и текущая ссылка считается окончательной.

P.S.

Обратный 301 редирект с домена без www на домен с www будет выглядеть так:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.(.*) [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]

Использованные источники

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить" Вы даёте свое согласие на обработку введенной персональной информации в соответствии с Федеральным Законом №152-ФЗ от 27.07.2006 "О персональных данных", на условиях и для целей определенных политикой конфиденциальности сайта.
© Юрий Рассадников, 2011 - 2024
uptime узнать
Домен : reg.ru
Хостинг : adman.com
SQL - 6 | 0,137 сек. | 8.28 МБ