Редиректы: что это, зачем нужен, виды, как сделать?

В этой статье вы найдете подробную информацию о редиректах. Познакомитесь с видами перенаправлений и узнаете, какие задачи они решают. Узнаете, как сделать редирект разными способами и какой метод перенаправления предпочтителен в конкретных случаях.

Что такое редиректы и зачем они нужны?

Редирект — перенаправление пользователя с одного URL на другой. Например, при переходе по ссылке http://seoshnikov.ru браузер автоматически перенаправляет пользователя на URL https://seoshnikov.

Редиректы: что это, зачем нужен, виды, как сделать?

Редиректы помогают корректно перенаправлять посетителей на нужные страницы сайта без ущерба для пользовательского опыта и без нарушения требований поисковых систем. Правильно выполненный редирект сохраняет авторитет или ссылочный вес страницы-донора и передает его на страницу-акцептор.

В данном случае донор – страница, с которой перенаправляются пользователи. Акцептор – страница, на которую направляются пользователи.

Вот примеры использования редиректов:

  • Перенаправление с http на https. Пример указан выше.
  • Перенаправление с URL с www на URL без www и наоборот. При переходе по ссылке https://tinkoff.ru браузер перенаправляет пользователя на https://www.tinkoff.ru. При переходе по ссылке https://www.vc.ru браузер перенаправляет посетителя на https://vc.ru/.
  • Переезд сайта на другой домен. Пару лет назад коллеги из популярного издания отказались от названия «Цукерберг позвонит» и настроили редирект с адреса http://siliconrus.com на https://vc.ru/.
  • Перенаправление трафика с одной страницы сайта на другую. Например, если в интернет-магазине нет какого-то товара, он может перенаправить трафик на страницу похожего продукта.
  • Перенаправление пользователей на мобильную версию сайта. Если владелец ресурса использует для адаптации к мобильному трафику только мобильную версию сайта, он настраивает редирект мобильных пользователей с www.example.au на www.m.example.au.

С помощью редиректов владелец сайта направляет пользователей с неактуальных страниц на актуальные. Перенаправления классифицируются по функциональному назначению и по способу реализации.

Виды перенаправлений (Редиректов)

Браузеры и роботы поисковых систем определяют вид редиректа по коду состояния HTTP. Перенаправления могут иметь разный HTTP-статус: 301, 302, 303, 307. Давайте рассмотрим каждый вид подробнее.

Редирект 301

Это самый распространённый вид перенаправления. Его можно сравнить с постоянным переездом — когда вы уезжаете из одного дома в другой и точно не вернётесь назад.

Редиректы: что это, зачем нужен, виды, как сделать?

Получается, что HTTP-статус 301 (Moved Permanently) означает, что веб-страница навсегда перемещена с запрошенного URL на новый. После получения ответа 301 браузер делает новый запрос и быстро перенаправляет пользователя на актуальную страницу.

Поисковые системы хорошо реагируют на 301-й редирект, да и сложностей обычно не возникает. Но важно всё правильно настроить, чтобы пользователь при переходе не получил ошибку 404.

Редирект 302

Этот редирект 302 (Moved Temporarily) можно назвать «временным». Возвращаясь к предыдущему примеру с переездом в новый дом, этот вид можно сравнить, например, поездкой на дачу на летние каникулы — ваша квартира в городе никуда не денется, и вы сможете вернуться туда в любой момент.

Редиректы: что это, зачем нужен, виды, как сделать?

К такому виду часто прибегают владельцы интернет-магазинов, чтобы перенаправить потенциальных покупателей со страницы с товаром, который закончился, на позицию с аналогичными характеристиками.

Важно — редирект 302 не передаёт авторитет и ссылочный вес донора акцептору. Для поисковых систем это означает полное дублирование страниц, а потому одна из них (чаще всего старая) будет исключена из выдачи (кстати, как и в случае с 301).

Редиректы 303 и 307

307-й (Temporary Redirect) для поисковых систем фактически точная реплика (копия) 303-го (Found) редиректа. Это временное перенаправление трафика на новую страницу с сохранением всех параметров прежней.

Эти виды используют, когда появляется необходимость перенаправить пользователя на другую страницу, которая не содержит точного ответа, но является частичной заменой запрошенной.

В большинстве случаев владельцам сайтов подходит редирект 301. Именно этот вид уведомляет поисковых роботов, что документ навсегда перемещён на новый адрес, что передаёт авторитет и ссылочный вес новой странице.

Способы реализации редиректов

Все реализации редиректов можно разделить на 2 группы:

Редиректы: что это, зачем нужен, виды, как сделать?
  • Серверные. Переадресации с помощью правил .htaccess, панели управления хостингом, PHP-скриптов — это примеры серверных реализаций. Такие редиректы происходят очень быстро, практически моментально, так как выполняются еще на этапе обработки запроса сервером.
  • Браузерные. JavaScript, HTML, Meta-refresh — это браузерные редиректы. Они гораздо медленнее серверных, так как срабатывают уже после загрузки страницы или ее части в браузере.

Стандартные переадресации — с HTTP на HTTPS, со старого адреса на новый и т. д. —чаще всего реализуются с помощью серверных редиректов. Они надежные, быстрые и незаметные. Браузерные редиректы в этих случаях использовать крайне не рекомендуется: помимо медленного срабатывания, они могут не поддерживаться браузерами (тот же JavaScript может быть отключен).

Разберем подробнее.

Настройки редиректа с помощью панели управления хостингом

Большинство популярных панелей управления позволяют добавить в настройках правила типовых редиректов: с адреса, начинающегося на WWW на адрес без WWW, с HTTP на HTTPS и подобные. Что-то более точное в панели можно настроить, но уже через .htaccess — просто открывать и редактировать его вы можете и из панели управления хостингом.

Редирект через .htaccess

.htaccess — это специальный конфигурационный файл, который расположен в корневой папке сайта. Настройка редиректа с помощью прописанных в нем правил встречается чаще всего. Это переадресация серверного типа, она работает очень быстро и практически незаметна для пользователя.

Важный момент: файл .htaccess существует только у сайтов под управлением веб-сервера Apache, но их — большинство.

Чтобы проверить, под Apache ваш сайт или нет, можно воспользоваться инструментом от Netcraft. Смотрите в разделе Hosting History, в колонке Web Server.

Редирект на серверах Ngnix

Если ваш сайт работает не под Apache, а под Ngnix, здесь все настраивается совершенно по-другому. Есть основной файл конфигурации для всех доменов на сервере — ngnix.conf, а есть отдельные файлы для виртуальных хостов, т. е. отдельных доменов.

Для редактирования правил используется терминал. Синтаксис переадресаций для Ngnix отличается от синтаксиса в .htaccess. Но есть специальные сервисы, например, Winginx, которые помогают преобразовать правила из .htaccess в правила конфигурации Ngnix.

Плагины CMS

Для того чтобы администратору сайта не приходилось вникать в особенности программирования на PHP или синтаксис директив в .htaccess, разработчики CMS и энтузиасты создали множество специальных плагинов:

  • OpenCart: Менеджер 301 редиректов, Менеджер редиректов для OpenCart 3.0.
  • Битрикс: Редиректы для SEO, Простой редирект страниц.
  • Joomla: Domainredirect.

Чтобы настроить в них редирект, вам потребуется только указать адреса страниц-доноров и акцепторов, или маску для их определения, а также основные параметры редиректа: постоянный, временный и т. п. Многие плагины имеют дополнительные преимущества: например, отслеживают изменение URL страницы-акцептора и соответственно меняют правило переадресации.

Особенно широкий выбор дополнений, конечно, в Wordpress. Есть узкоспециализированные плагины, например, только для переадресаций на HTTPS (Easy HTTPS Redirection).

Простой плагин только для одной функции

Есть многофункциональные: популярный плагин Redirection позволяет настраивать практически любые варианты редиректов.

Свыше 2 миллионов установок

А в арсенале Rank Math SEO не только настройка перенаправлений, но и большое количество других инструментов для оптимизации сайта.

В названии не просто так написано «лучший» — это действительно мегаполезное многофункциональное дополнение с хорошими отзывами

PHP-редирект

Переадресация этого типа также относится к серверным, хотя и работает чуть медленнее той, что сделана через .htaccess. Правила прописываются обычно в индексном файле сайта (index.php).

Редирект через PHP оптимален в тех случаях, когда у вас много правил для отдельных страниц или групп страниц. Файл .htaccess может сильно нагружать сервер, из-за множества директив.

JavaScript-редирект

Это уже переадресация браузерного типа. Редирект произойдет только когда страница-донор будет загружена в браузере. JavaScript-редирект оптимально подходит для нескольких ситуаций:

  • Переадресация нужна с задержкой. Вы хотите, чтобы пользователь ознакомился с содержанием страницы-донора, прочел надпись «Сейчас мы автоматически перенаправим вас на …» и только после этого произошел редирект.

Переадресация с задержкой

Типовой случай: вы переехали на другой домен и при этом сменили дизайн. Если просто перенаправлять пользователя со старого на новый сайт без объяснений, он может не понять, что происходит, решить, что столкнулся с действием вируса и закрыть страницу. А вот если написать на старом домене: «Мы переехали! Сейчас вы будете перенаправлены на наш новый сайт» — поведенческие показатели будут лучше.

  • Переадресация нужна после определенного действия пользователя на странице, например, нажатия на ссылку или кнопку. Пример использования — запрос подтверждения у пользователя при переходе по внешней ссылке.

Подтверждение перехода по ссылке на сайте text.ru

  • Нужна вторая переадресация после 301 редиректа. После оформления заказа вы направили посетителя на страницу благодарности. А позже, после того как пользователь с ней ознакомится, хотите перенаправить его на главную страницу, в личный кабинет, или на страницу акций. Второй подряд 301 редирект может неблагоприятно сказаться на SEO-показателях. А вот JavaScript здесь будет уместен, тем более, что в нем легко выставить тайминг.

Однако нужно учитывать, что у многих посетителей в настройках безопасности браузеров JavaScript отключен. В этом случае переадресация не произойдет.

HTML-редирект или meta-refresh

Браузерный тип переадресации. Представляет собой метатег, в котором обычно указывается время задержки и страница, на которую перенаправляется пользователь.

Пример кода тега meta refresh с задержкой перенаправления 2 секунды

У meta-refresh плохая репутация среди поисковых систем, так как этот метод довольно часто использовался для перенаправления на дорвеи. Кроме того, у meta-refresh есть и другие недостатки:

  • поддерживается не всеми браузерами;
  • приводит к ошибкам сканирования. Поисковый робот не сканирует страницу, на которой расположен метатег refresh, а сразу переходит к той, на которую ведет переадресация;
  • может определяться Google и «Яндексом» как спам, с соответствующими санкциями;
  • Google-бот может игнорировать страницы с этим метатегом и не индексировать их.

W3C (World Wide Web Consortium) не рекомендует использовать этот атрибут.

Однако в некоторых случаях использование такого редиректа может быть целесообразным, например, для:

  • перенаправления посетителя после оформления заказа на страницу благодарности;
  • «подстраховки» переадресаций, реализованных на JavaScript — если браузер посетителя не поддерживает скрипты;
  • перенаправления посетителя на страницу со ссылками для загрузки корректных браузеров — если в его браузере ваш сайт будет отображаться и работать с ошибками.

Примеры редиректов

Теперь перечислим самые распространенные случаи в SEO, когда нам пригодится переадресация.

Редиректы: что это, зачем нужен, виды, как сделать?

Склейка зеркал

Для поисковых систем разные варианты написания одного и того же доменного имени, являются разными сайтами. Их называют зеркалами.

Например, 4 основных зеркала для любого сайта:

  • http://site.ru
  • http://www.site.ru
  • https://site.ru
  • https://www.site.ru

Чтобы выбрать одно из них главным самостоятельно, а не по усмотрению поисковика, настраиваем 301 редирект с http на https + выбранный вариант написания доменного имени, с www или без www.

Лучше сделать его напрямую, без промежуточных редиректов.

Делаем так:http://www.site.ru →301 https://site.ru

А не так:http://www.site.ru →301 https://www.site.ru →301 https://site.ru

Использовать несколько переадресаций за одно обращение допустимо, но в идеале стараемся избегать любых цепочек редиректов, потому что они:

  • могут привести к циклическим редиректам;
  • расходуют краулинговый бюджет, роботу сложнее обойти сайт;
  • могут вызвать задержку загрузки страницы;
  • возможны «потери» при передаче ссылочного веса;
  • более 5 редиректов не допустимо: робот может посчитать, что сайт был взломан, и вовсе отказаться его сканировать.

Подклейка другого домена

При смене доменного имени или объединении нескольких сайтов в один, необходимо также настроить 301 редирект с домена на домен.

Не только для удобства пользователей, что привыкли к прежним имени/именам, но и для передачи ссылочного веса со старых сайтов. Особенно важно это в случае, если новое доменное имя совершенно свежее и раньше не использовалось — таким образом оно сразу получит определенный вес и авторитет.

Редиректы здесь, как и в предыдущем случае, настраиваем напрямую. К тому же очень желательно, чтобы страницы редиректили на страницы, похожие по смыслу и содержимому. Тогда склейка пройдет без проблем и может улучшить позиции в выдаче сайта-цели редиректа.

Удаление/перенос страниц и разделов

Когда страница перестает существовать в архитектуре вашего сайта, то нельзя просто отключать ее в админке. На эту страницу могут вести ссылки с других сайтов, тем самым увеличивая ссылочный авторитет вашего. Или же она могла успешно ранжироваться и приводить трафик из поиска, который теперь просто исчезнет.

Приняв решение удалить страницу, подумайте куда перенаправить пользователя, приходившего на нее. Самое логичное — это отправить его на страницу, схожую по смыслу, т.е. настроить редирект с одной страницы на другую .

Например, страницу каталога Платья бренда BAOMI /catalog/dresses/baomi/ надо удалить — в вашем ассортименте больше нет их продукции. В этом случае разумно настроить 301 редирект страницы и всех вложенных товаров на категорию верхнего уровня /catalog/dresses/: нет платьев этого бренда, но есть другие.

В крайнем случае, если похожих страниц нет, можно перенаправлять на главную.

Технические дубли страниц

В результате работы движка CMS на сайте нередко возникают технические дубли — страницы, которые имеют одинаковый контент и отличные URL-адреса. Скорее даже чаще возникают, чем не возникают.

А разные URLы, как мы помним, это разные страницы. Поэтому в поисковый индекс может попасть множество страниц с одинаковым содержимым. Это, во-первых, бесцельно расходует ограниченный краулинговый бюджет, а во-вторых, может существенно ухудшить ранжирование, т.к. поисковая система будет путаться в многочисленных вариантах и показывать пользователю то одну, то другую страницу.

Частые случаи технических дублей:

  • со / на конце и без /. Пример, /catalog/ и /catalog — это разные адреса;
  • нижний и верхний регистр. Пример, /catalog/Dresses/ и /catalog/dresses/;
  • несколько одинаковых символов подряд, чаще всего это слеш //, но могут быть другие (&&, ___, ?? и т.д.). Пример, catalog/Dresses////;
  • GET-параметры, которые не меняют содержимое страницы. Пример, /catalog/dresses/?date=2021-12-25/

Результаты работы панели управления сайтом могут создавать необычные дубли, поэтому изучите особенности работы своего движка.

Решение в случае с техническими дублями: оставить только один вариант URL, со всех остальных поставить 301 редирект на него.

Также надо максимально убрать возможность появления адресов дублирующих страниц в коде, настроив модули и плагины CMS.

В случае с GET-параметрами иногда это сложно реализовать, тогда на помощь может прийти мета-тег robots NOINDEX или canonical, о нем расскажем дальше.

Ошибки при использовании редиректов

Редиректы: что это, зачем нужен, виды, как сделать?
  • Любой многошаговый редирект. Если есть возможность, то желательно не допускать многошаговых редиректов, чтобы он и быстрее сработал, и передалось максимум ссылочного веса.
  • Использование неправильного типа редиректов. При выборе типа редиректа необходимо учитывать нюансы каждого из них.
  • Внедрение внутренних редиректов без смены ссылок на новые адреса. После внедрения всех редиректов у себя на сайте, необходимо проверить, чтобы каждая страница вашего сайта уже ссылалась на новую и внутри сайта у вас не было ссылок на страницы, с которых происходит редирект.
  • Редирект на нерелевантные страницы/контент. Редирект всегда желательно проставлять на максимально релевантную страницу: или на похожую страницу, или на ветку каталога/раздела, к которому принадлежала данная страница.
  • Неправильный выбор использования rel=canonical vs 301 редирект.
  • Редирект, конечной точкой которого является не 200-я страница. Редирект должен вести на правильно работающую страницу с 200 ответом сервера. Иначе, желательно не сбивать поисковых роботов и отдавать 404 ответ.
  • Редирект robots.txt. Так как, например, нужно прописывать директиву Host для Яндекса при склейке доменов.

Надеемся, что данное руководство станет вам шпаргалкой и помощником для использования 301-го редиректа для вашего сайта.

33
1 комментарий

Здравствуйте! Появился вопрос.

Редиректы 303 и 307. Это временное перенаправление трафика на новую страницу с сохранением всех параметров прежней.

Значит ли это, что в случае редиректов 303 и 307 авторитет страницы-донора передаётся странице-акцептору?

Ответить