Мы используем файлы cookie для обеспечения работоспособности сервиса, улучшения навигации и маркетинговых активностей Serpstat. Нажимая "Принять и продолжить", вы соглашаетесь с нашей Политика конфиденциальности

Сообщить об ошибке

Отменить
15741 28
How-to Читать 8 минут

Настройка редиректов на сайте: как избежать ошибок

Как настроить редиректы и избежать ошибок
АУДИТ САЙТА — РЕДИРЕКТЫ
Инструкцию одобрила
SEO-специалист в CF.Digital
Для корректной работы сайта важно следить за использованием редиректов. Необходимые переадресации можно прописать в файле .htaccess, а также добавить в код страницы редирект JS, HTML или PHP.

Что такое редирект

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

Редиректы применяются в таких целях:
1
Чтобы настроить переадресацию всех посетителей после смены домена. Это важно, чтобы не потерять всю постоянную аудиторию сайта, привыкшую находить его по определенному URL-адресу. Также такой редирект позволяет сохранить все результаты SEO-продвижения ресурса.
2
Для SEO-оптимизации, чтобы «склеить» домены — обозначить поисковику предпочтительную версию сайта, например, с www либо без www. На вариант, указанный с помощью редиректа, будут переадресовываться все посетители вне зависимости от того, как именно они ввели адрес сайта.
3
При смене формата адреса также нужно указать редирект, чтобы не потерять существующий трафик и результаты продвижения. Например, при изменении адреса «some-page.html» на «some-page» без расширения.
4
При переходе на безопасный протокол HTTPS.
5
При удалении страницы с сайта. Чтобы пользователь не попадал на страницу с 404 ошибкой, его сразу перенаправит на страницу с подобным контентом или эту же (в случае изменения URL).
Как можно настроить редиректы:

  • с помощью файла .htaccess в корневом каталоге сайта;
  • в панели управления хостинг-провайдера;
  • на странице сайта, используя JS, PHP или HTML-код.

Основные ошибки, связанные с редиректами

  • Многошаговые редиректы («цепочка редиректов») — на страницу с уже установленной переадресацией. Редирект должен вести на нужную страницу без последующего перенаправления;

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

  • редиректы на удаленные или неработающие страницы. Можно прописывать переадресацию только на страницы с ответом сервера 200, обозначающим их корректную работу;

  • редиректы для дорвеев — сайтов, оптимизированных под ряд ключевых запросов и не имеющих ценности для пользователей. Такие ресурсы создают специально для перенаправления пользователей на другие сайты, их использование противоречит рекомендациям поисковых систем;

  • добавление редиректа вместо rel=canonical. Если содержимое страниц дублируется, например, в версиях для печати или мобильных устройств, предпочительно указать канонический адрес;

  • очень существенная ошибка — поставить 302 вместо 301 редиректа при смене домена, удалении страницы или изменении адреса;

  • не стоит использовать редирект для файла robots.txt. В противном случае в Яндекс.Вебмастере в разделе «Диагностика сайта» появится сообщение: «Сервер отвечает редиректом на запрос /robots.txt»:
Анализ robots.txt в Яндексе
При смене домена и переадресации на новое расположение файла robots.txt нужно подтвердить права на новый сайт в Яндекс.Вебмастере.

Виды редиректов

  • 300 Multiple Choices — множественный выбор. Существует несколько адресов, на которые пользователь перенаправляется в зависимости от собственного выбора либо настроек своего браузера:
Редирект 300 Multiple Choices
Данный вариант редиректа используется редко;

  • 301 Moved Permanently — редирект на новый адрес на постоянной основе. Наиболее популярный вид переадресации, удаляющий из индекса старый адрес, но сохраняющий все его параметры и передающий их на новый. Такой вариант подходит также для удаления дублей. Можно применять, если использовать текущую страницу или домен больше не нужно;

  • 302 Found — временная переадресация на другой адрес. 302 редирект перенаправляет на новую страницу, которая не индексируется, а все показатели сохраняются на старом адресе. Не подходит при смене домена;

  • 303 See Other — переадресация на страницу, для отображения которой используется метод GET. Такой редирект говорит о том, что документ найден, но на него нужно перейти, используя метод запроса GET, даже если изначально использовались HEAD или POST. Используется редко, например, когда в результате пользовательского поиска по сайту был найден один документ. В таком случае можно сразу перенаправить на него посетителя с помощью 303 редиректа, не показывая отдельно результаты поиска;

  • 304 Not Modified — редирект, обозначающий, что документ не изменился. Такой ответ получает браузер при повторном обращении на страницу, которая не была модифицирована. В этом случае ее нужно загрузить из кэша браузера;

  • 305 Use Proxy — переадресация на данную страницу выполняется через прокси, его адрес передается браузеру;

  • 306 Switch Proxy — на данный момент не используется. Ранее означал, что будущие запросы должны происходить через переданный прокси;

  • 307 Temporary Redirect — редирект, сходный по действию с 302. Также временно заменяет адрес исходной версии, которая не удаляется из индекса. В отличие от 302 редиректа, устраняет неоднозначность по поводу того, нужно ли менять метод запроса документа. В данном варианте он не меняется, например, страница, запрошенная через метод POST, не может поменять его на GET.

Как настроить редиректы

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

Как указать 301 редирект в .htaccess

Редирект 301 можно указать в файле .htaccess, находящемся в корневой папке сайта. Редактировать данный файл можно в файл-менеджере хостинг-провайдера:
Редирект 301 через htaccess
В начале файла должно быть прописано правило, указывающее серверу на наличие редиректов:
Настройка редиректов в файле htaccess
Переадресация одной страницы:
301 редирект страницы в htaccess
Переадресация всего сайта:
301 редирект сайта в htaccess
Редирект с WWW на без WWW — указание зеркала:
Указание зеркала в htaccess
Редирект с HTTP на HTTPS:
Редирект с http на https в htaccess
Редирект адресов со слешем (/) на без него:
Редирект со слешем в htaccess

Настройка 301 редиректа с помощью скриптов

Редирект PHP

Для переадресации всего сайта данный код нужно разместить в файле index.php:
<?php 
 header("HTTP/1.1 301 Moved Permanently"); 
 header("Location: https://www.new-site.ru"); 
 exit(); 
 ?>
При редиректе отдельных страниц можно использовать точно такую же конструкцию, размещая код в верхней части документа.

Редирект JS

Можно использовать различные функции JavaScript, чтобы установить переадресацию. Вне зависимости от выбранной реализации, на странице HTML необходимо помещать код внутри тегов <script></script>. Для редиректа JS необходимо, чтобы продолжала существовать исходная страница, с которой идет перенаправление. Варианты функций для редиректа:

  • document.location="https://www.new-site.ru";
  • window.location.replace("https://www.new-site.ru");
  • window.location.reload("https://www.new-site.ru");
  • document.location.replace("https://www.new-site.ru");
  • location="https://www.new-site.ru/";
  • редирект через 10 секунд с сообщением о перенаправлении пользователю:
   function Redirect() 
    {  
        window.location="https://www.new-site.ru"; 
    } 
    document.write("У нашего сайта новый адрес — вы попадете на него через 10 секунд"); 
    setTimeout('Redirect()', 10000);  
HTML-редирект

Код прописывается в разделе заголовков, редирект происходит через 5 секунд:
<head>
<meta http-equiv="refresh"="5;URL=https://www.new-site.ru" />
</head>
Такой вариант не рекомендует использовать W3C, советуя перенаправлять пользователей другими способами.

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

Установить редиректы можно также в настройках сайта на хостинге. В данном случае можно активировать редиректы на безопасный протокол HTTPS и на формат адреса без WWW:
Настройка редиректов на хостинге
При использовании таких настроек стоит учитывать, нет ли подобных параметров в CMS, чтобы не дублировать правила перенаправления либо не установить противоречивые редиректы.

Заключение

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

  • наиболее часто для SEO-оптимизации используют 301 редирект, а также 302 и 307;

  • технически реализовать переадресацию можно, используя файл .htaccess, либо разместив необходимый код HTML, JS или PHP на страницах сайта.
Эта статья — часть модуля «Аудит сайта» в Serpstat
«Аудит сайта» в Serpstat
Аудит всего сайта или отдельной страницы в один клик. Полный список ошибок, отсортированный по критичности, пути их устранения и рекомендации. Любая периодичность проверки и автоматическая рассылка отчетов на почту.
Запустить аудит сайта

Сэкономьте время на изучении Serpstat

Хотите получить персональную демонстрацию сервиса, тестовый период или эффективные кейсы использования Serpstat?

Оставьте заявку и мы свяжемся с вами ;)

Оцените статью по 5-бальной шкале

2.89 из 5 на основе 9 оценок
Нашли ошибку? Выделите её и нажмите Ctrl + Enter, чтобы сообщить нам.