При работе над оптимизацией и продвижением сайтов порой возникает необходимость убрать из индексации неактуальные, несуществующие или ненужные страницы. Это как раз делается посредством 301 редиректа.
Также при работе над SEO-аудитом у нас есть пункт «Зеркала сайта», там мы проверяем все зеркала сайта на ответ сервера, и если все зеркала, кроме главного, отдают ответ «200», то мы рекомендуем настроить 301 редирект с неосновных зеркал на основное. Но у наших клиентов нередко возникает вопрос, что это за редирект такой, 301-й. Что ж, отвечаем.
Редирект — это перенаправление пользователя с одного url-адреса на другой.
Если проще: бывает, что пользователь печатает один адрес страницы, а попадает на совершенно другой. Это может быть связано с тем, что данные на прошлом url стали неактуальными, а на новой странице находится смежная актуальная информация. Либо ссылка стала битой, и с помощью 301 редиректа была произведена настройка, чтобы на эту битую ссылку не попасть.
301-й и остальные редиректы
Существует 3 чаще всего использующихся вида редиректа: 301, 302 и 303. И вот что они означают.
- 301-й — основная тема статьи. Он показывает, что ресурс перенесен на новый адрес навсегда. Показатели посещаемости передаются сайту-акцептору, а сайт-донор пропадает из поиска.
- 302-й — временное перенаправление, которое отдает статус «найдено» (302 Found). Поисковый бот понимает страницу как временно несуществующую (например, на время технических работ) и редиректит (перенаправляет) пользователя на нужную ему. 302 не передает ссылочный вес акцептору. Для поисковых систем это видится как дублирование страниц, и нередко старая страница исключается из выдачи.
- 303-й (See Other) — этот редирект похож на 302-й и тоже озачает временное перенаправление.
Нас же, в первую очередь, интересует перенаправление с одного на другой сайт навсегда, то есть самый первый вариант.
Теперь разберемся, для чего нужен 301 редирект и как его использовать.
Для чего нужен 301 редирект
- При склеивании зеркал ресурса. Без настройки 301 редиректа любой сайт будет доступен для индексирования роботом по всем зеркалам, таким как https://, http://, https://www и http://www. Такого быть не должно, так как робот думает, что все сайты разные, и каждое зеркало сканирует отдельно. Это может привести к неправильному распределению ссылочной массы на разные зеркала и негативно повлиять на продвижение ресурса.
- При переносе сайта на другой домен. Иногда по разным нуждам требуется переехать на другой домен. Будь то сильное снижение трафика, либо ребрендинг компании с плавным переездом контента. Но факт остается фактом: старый домен вскоре будет недоступен. Для избежания потерь постоянных посетителей или тех, у кого сайт в закладках, необходимо настроить 301 редирект. Так при клике на старый домен пользователь будет перемещаться на актуальный.
- Для мобильных. Для быстрого перехода с планшетов и мобильных устройств на адаптированную для них версию сайта также используется 301 редирект.
- При переходе на другой хостинг со сменой адреса сайта.
- При удалении ранее существовавшей страницы. Чтобы пользователи не видели 404 страницу, можно сделать 301 редирект либо на главную, либо на страницу со схожим контентом.
- При дублях. Страницы со схожим контентом ухудшают ранжирование, а если страницы полностью повторяют контент друг друга, то поисковые роботы и вовсе могут исключить страницы из поиска. Поэтому, чтобы устранить риски, рекомендуется настроить 301-й редирект.
301 редирект или rel="canonical"?
В пункте про дубли может встать вопрос: зачем использовать 301 редирект, если можно использовать атрибут rel="canonical"?
Давайте разберемся.
- 301 редирект необходим, когда страница навсегда переехала в другое место и по старому адресу она доступна не будет. И с помощью редиректа мы удаляем ее из индекса и передаем вес на новую страницу.
- Canonical нужен, когда есть несколько страниц с очень схожим контентом, и мы этим атрибутом определяем каноничную страницу, которую должен сканировать поисковый бот. Остальные страницы останутся доступны для посетителей, но не будут индексированы.
То есть при кажущейся схожести — это совершенно разные методы. Через редирект мы даем понять и пользователю, и поисковому роботу, что старой страницы больше не существует и нужно бросать все внимание на новую, актуальную страницу или сайт, даже если содержимое отличается.
Используя canonical при двух страницах с похожим контентом, мы даем команду поисковому боту индексировать только ту страницу, которой предпочтительнее давать вес. Контент не на канонических страницах остается виден посетителям.
Правильно настроенный 301-й редирект поможет как минимум избежать возможного отказа на сайте, ведь если посетитель зайдет на старую страницу или ресурс с ненастроенным редиректом, то он просто увидит 404 ошибку или полностью нерабочий сайт и будет искать нужное на других сайтах.
301-й редирект настраивается разными способами и чуть ниже мы их разберем.
Больше статей на схожую тематику:
Распространенные типы 301 редиректа
Давайте посмотрим, какие типы 301-го редиректа существуют, для чего они нужны и как их применять.
Htaccess-редирект
Способ для веб-сервера Apache.
.htaccess — системный файл, который должен находиться в корне сайта. Если его нет, то его стоит создать с помощью Notepad++ в Windows.
Для получения доступа к нему следует зайти в панель управления хостинга, на котором находится нужный сайт. Либо если есть доступ к FTP, то найти файл можно через этот протокол.
Если файл уже существует, не забудьте сделать его резервную копию!
Итак, настройка 301 редиректа через .htaccess идет для:
-
Переноса домена
Для настройки редиректа для переноса домена через этот тип необходимо открыть файл .htaccess и найти в файле следующие строки:
RewriteEngine On RewriteBase /
Если их нет, то их следует добавить в конец файла. Сразу после записи вставляем следующий код:
RewriteCond %{HTTP_HOST} ^old\-site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
Где
- old-site.ru — домен, с которого настраиваем редирект;
- new-site.ru — домен, на который настраиваем редирект.
-
Переезд с http на https
Для настройки переезда домена с http на https через 301 редирект все действия практически аналогичны вышенаписанным.
Также ищем строки
RewriteEngine On RewriteBase /
Или добавляем их в конец файла, если их нет. После них вписываем следующий код:
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://domain.ru/$1 [R=301,L]
где https://domain.ru — ваш сайт.
Вообще на дворе 2022 год, и если сайт на https, то это хороший тон как для пользователей, так и администраторов сайта.
Этот протокол намного безопаснее, чем http, и, заходя на сайт с защищенным соединением, пользователь может быть спокоен, что его данные не смогут украсть злоумышленники, а также особо наглые операторы сотовой связи не смогут встраивать рекламные блоки прямо в сайте.
Также про переезд на https мы писали ранее.
-
Склейка с префиксом www и без него
Для склейки сайта с префиксом www и без www действия аналогичные.
Ищем или добавляем строки
RewriteEngine On
RewriteBase /
После них вставляем код:
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ https://site.ru [L,R=301]
где site.ru страница-акцептор.
-
Редирект для внутренних страниц
Настроить 301 редирект среди внутренних страниц намного проще. Не нужно записывать несколько строк кода с правилами. Для настройки редиректа по внутренним страницам используем в начале файла следующий код в файле .htaccess:
Redirect 301 /page-old/ https://site.ru/page-new/
Используемые символы в редиректе
- \ — экранирующий слеш, сохраняющий символы, идущие после него в исходном виде
- ^ — начало строки
- $ — конец строки
- ! — знак отрицания
- . — любой символ
- ( ) — обозначение группировки символов
- # — комментарии
PHP-редиректы
Для настройки этим способом нужно открыть (перед этим скачав на ПК) index.php и прописать следующий код в начале:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://www.newdomain.ru/«);
exit();
?>
Далее нужно сохранить изменения и загрузить файл на сервер.
Данное перенаправление сделали при помощи отправки заголовков.
JavaScript-редирект
Такой тип редиректа наиболее медленный, т.к. редирект выполняется на стороне браузера, а не сервера. Но зато с его помощью можно предупреждать пользователей о смене адреса страницы. Например, при переходе на страницу с редиректом, будет отображаться надпись «Страница переехала, сейчас вы будете туда перенаправлены», и через несколько секунд пользователь будет туда перемещен.
Чтобы настроить такой тип редиректа, необходимо добавить код между тегами <head> и </head> страницы, с которой нужно перенаправлять пользователей.
Такой код нужно вставить в <head>:
<script>
SetTimeot(‘location.href = ‘/’;",2000);
</script>
Так мы настроили переадресацию с задержкой 2 секунды.
Также для Wordpress существует бесплатный плагин для простой настройки редиректа такого типа Per page add to head.
HTML-редирект
Как и прошлый тип редиректа, этот также работает на стороне браузера, значит скоростью перенаправления блистать не будет.
Для добавления редиректа на странице, с которой он будет производиться, между тегами <head> и </head> добавляем следующий код:
<meta http-equiv="refresh" content ="3 url=/">
Сохраняем изменения и проверяем.
NGINX-редирект
Для веб-сервера Nginx 301 редирект с одной страницы на другую настраивается в конфигурационном файле (либо через htaccess), так: server {listen 443;location /cat/first {return 301 /second/;}
Web.config редирект
Данный способ для серверов IIS. Настройка редиректа выполняется в XML файле web.config. Там же находятся все основные настройки сервера. Перенаправляем с одной страницы на другую:
<configuration> <location path="page1.htm"> <system.webServer> <httpsRedirect enabled="true" destination="https://site.com/page1″ httpsResponseStatus="Permanent" /> </system.webServer> </location> <location path="page2.htm"> <system.webServer> <httpsRedirect enabled="true" destination="https://site.com/page2″ httpsResponseStatus="Permanent" /> </system.webServer> </location></configuration>
Нравится статья? Тогда смотрите наши курсы!
Сервисы для генерации редиректа
Если вы не хотите вручную прописывать все правила для редиректа, существует несколько сервисов которые сделают это за вас. Нужно в нужные поля ввести адрес старой страницы и новой, а сервис сгенерирует код, который, например, нужно будет вставить в .htaccess.
С помощью этого сервиса можно создать код 301 редиректа с www на домен без него и наоборот.
Позволяет сгенерировать код для всех вышеупомянутых типов редиректа.
Еще один генератор 301 редиректа с удобным интерфейсом.
Simple Htaccess Redirects & Rewrite Generator
Универсальный генератор редиректов. С помощью него можно настроить основной url, как со слешем в конце адреса «/», так и без него.
Практически во всех сгенерированных вариантах в коде могут быть комментарии самого сервиса — смело стирайте их.
Сервисы для проверки редиректа
Чтобы оперативно проверить результат своего труда, для есть несколько сервисов (т.н. чекеры), которые покажут тип редиректа, а также ответ сервера.
Показывает наличие редиректа на сайте.
Англоязычный чекер редиректов. Показывает тип редиректа и статус ответа сервера.
Примеры роста кликов, конверсий, заказов и прибыли:
Выводы
В целом «подравнять» структуру сайта не так уж и сложно: важно соблюдать последовательность правил, и тогда 301 редирект будет работать правильно. Скрывайте ненужные для просмотра страницы, прежде всего так вы сэкономите посетителю сайта время на поиск нужной информации.
А если хотите сэкономить свое время, то мы в этом с радостью поможем! Переведем ваш сайт на https, настроим 301 редирект, а также проведем другие работы по улучшению сайта.
Технический SEO-специалист сервиса 1PS.RU
© 1PS.RU, при полном или частичном копировании материала ссылка на первоисточник обязательна