301 редирект – что это и как его поставить
Многим вебмастерам знакомо понятие 301 редиректа. Однако у новичков могут возникнуть некоторые вопросы. В сегодняшней статье будет подробно описано, что он собой представляет, для чего нужен, и как его прописать на своем сайте. Так же приведем в качестве примера фрагменты кода, которые нужно будет прописать для настройки.
Содержание
Что такое 301 редирект?
301 редирект – параметр, прописываемый вебмастером для того, чтобы выполнить переадресацию страницы на новый адрес. В этом случае поисковые боты и обычные пользователи будут перенаправляться именно на новый URL, который прописан владельцем сайта. Так же этой странице будут переданы все свойства старого адреса (вес страницы, входящие ссылки и т.п.)
Говоря простым языком, если Вы установите редирект со страницы «А» на страницу «Б», то пользователи и поисковые системы при входе на страницу «А» будут автоматически перебрасываться на страницу «Б».
Для чего нужен 301 редирект
Существуют различные ситуации, когда необходимо будет создать перенаправление пользователей на новые адреса.
Есть четыре основных метода применения:
При изменении адреса страницы
Допустим, Вы решили обновить свой сайт и удалили несколько разделов, в том числе и рассмотренный в примере – cat1. При этом большая часть страниц сайта имели адрес:
Site/cat1/
Соответственно адрес материалов будет — Site/cat1/material1
После удаления раздела – cat1, материал был перенесен в раздел cat2. При этом он стал доступен по новому адресу:
Site/cat2/material1
Однако поисковый робот не может определить, что именно Вы сделали и проиндесирует эту страницу как новую. Тем самым на сайте станут появляться дубли, которые негативно скажутся на его индексации и оптимизации в поисковых системах. Для того чтобы указать боту как именно нужно индексировать сайт, используйте 301 редирект.
Склейка домена с www и без
Поисковым ботам необходимо будет показать, какой адрес сайта считается основным. Иначе может быть разделен ссылочный вес проекта, или боты посчитают основным зеркалом домен с www. Хотя данную проблему обычно решают директивой host в файле Robots.txt.
Смена домена
Может возникнуть необходимость поменять доменное имя. Обычно это происходит при смене названия фирмы. Или Вы решили сократить доменное имя для удобства. Например, несколько лет назад социальная сеть Vkontakte сократила доменное имя до VK.
В этом случае потребуется указать поисковым ботам, что сайт теперь называется по-новому. Так же редирект покажет, что необходимо перенести вес старого домена на новый.
Переезд с HTTP на HTTPS
В последние пару лет, данная тема становится более актуальной. Это связано с заявлениями поисковых систем (в основном Гугла) о необходимости установки SSL сертификатов. Так же в новых версиях браузеров сайты на HTTP будут отображаться как не безопасные. Посетители сайта, увидев такой значок, могут решить покинуть его, так как посчитают небезопасным.
Одним из указаний поисковых систем при переезде сайта, является 301 редирект на новый адрес с HTTPS.
Как поставить 301 редирект
Существует несколько способов, которые позволят установить 301 редирект на сайт или определенную страницу. Ниже рассмотрим основные из них.
301 редирект через Htaccess
Если на Вашем сервере стоит Apache, можете выполнить переадресацию с помощью файла htaccess. При этом нужно будет включить в файле php.ini модули для поддержки данной директивы.
Выглядеть редирект будет следующим образом:
Redirect 301 /page1.html http://new-domain.ru/page2.html
или
Redirect permanent /page1.html http://new-domain.ru/page2.html
В этом случае:
Page1 – старая страница
Page 2 – новая страница
У данного способа есть один большой недостаток. Возникает необходимость прописывать адрес для каждой страницы по отдельности. Таким же образом можно выполнить переезд сайта с HTTP на HTTPS.
RedirectMatch
Выполняется аналогично предыдущему методу. При этом можно установить одно выражение для всех старых адресов. Можно использовать в случаях смены движка сайта, когда вместо PHP, Вы стали использовать ASP. В этом случае перенаправление выполняется следующим образом:
RedirectMatch /(.*).php$ /$1.aspx
Перенаправление с WWW
Используется в случаях, когда необходимо создать редирект домена с www на домен без www добавьте в htaccess следующую запись:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.com$ [NC]
RewriteRule ^(.*)$ http://site.com/$1 [R=301,L]
Таким же образом можно выполнить перенос старого домена на новый
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.new.com/$1 [R=301,L]
Где www.new.com – адрес нового домена.
Редирект страниц
Иногда возникает необходимость настройки редиректа для отдельной страницы сайта. В этом случае прописываем:
Redirect 301 /str1 http://www.moisite.com/str2
Где:
- str1 – старая страница
- http://www.moisite.com/str2 — новая страница
Заключение
Использование 301 редиректа позволяет сайту правильно индексироваться поисковыми системами. Он необходим как поисковым системам, так и вебмастерам. С его помощью можно настроить перенос сайта на новый домен, изменить адреса страниц без потери веса и т.д. Отслеживать индексацию сайта можно с помощью инструментов для вебмастера от Яндекса или Гугла.
Ну когда же, ну когда же, Apache наконец будет полностью заменен на Nginx.