301 редирект – постоянное перенаправление пользователей и поисковых роботов с одного URL-адреса на другой. При изменениях URL страниц на сайте он помогает сохранить трафик, улучшить пользовательский опыт и предотвратить потерю позиций в поисковых системах.
Использование термина:
Разработка сайтов, SEO-продвижение
Когда используется 301 редирект
- Изменение структуры URL-адресов: при изменении структуры сайта или смене адресов отдельных страниц;
- Перенос сайта на новый домен: для сохранения авторитета и позиций старого домена в поисковых системах;
- Переход на безопасное соединение (HTTPS): для перенаправления пользователей с HTTP на HTTPS;
- Удаление или объединение страниц: когда определенные страницы удаляются или их контент переносится на другие адреса;
- Склейка дублей сайта: например, объединение версий сайта с www и без www в единую версию.
Как 301 редирект влияет на SEO?
301 редирект сообщает поисковым системам, что страница была навсегда перемещена на новый адрес. Это позволяет:
- Сохранить позиции в поисковой выдаче.
- Передать до 90–99% ссылочного веса со старого URL на новый.
- Предотвратить дублирование контента и каннибализацию ключевых слов.
Без корректной настройки 301 редиректа поисковые роботы могут считать старую и новую страницы разными ресурсами, что приведет к потере позиций и снижению видимости сайта.
Как настроить 301 редирект
301 редиректа со страницы на страницу
Пример 1 настройки редиректа 301 со страницы на страницу в файле .htaccess
Redirect 301 /старый-адрес.html http://новый-домен.ru/новый-адрес.html
Объяснение кода:
- Redirect 301 — указывает на постоянное перенаправление.
- /старый-адрес.html — относительный путь к старой странице.
- https://site.ru/новый-адрес.html — полный URL-адрес новой страницы, куда будет происходить перенаправление.
Пример 2 настройки редиректа 301 со страницы на страницу в файле .htaccess с использованием модуля mod_rewrite
RewriteEngine On
RewriteRule ^старый-адрес\.html$ https://site.ru/новый-адрес.html [R=301,L]
Объяснение кода:
- RewriteEngine On — активирует модуль переписывания правил (если он еще не включен).
- ^старый-адрес\.html$ — регулярное выражение, указывающее на старый URL.
- https://site.ru/новый-адрес.html — новый адрес, куда произойдет перенаправление.
- [R=301,L] — R=301 указывает на тип перенаправления (постоянное), L обозначает, что это последнее правило для выполнения.
Важно: Убедитесь, что модуль mod_rewrite включен на вашем сервере Apache. Если возникают ошибки, проверьте синтаксис файла .htaccess и убедитесь, что редирект не вызывает циклических перенаправлений.
Перенаправление всего сайта на новый домен:
RewriteEngine On
RewriteRule ^(.*)$ http://новый-домен.ru/$1 [R=301,L]
Перенаправление с HTTP на HTTPS:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Как проверить корректность 301 редиректа?
После настройки перенаправления обязательно убедитесь, что все работает правильно:
- Перейдите по старому URL в браузере и убедитесь, что он автоматически перенаправляет на новый адрес.
- Используйте онлайн-инструменты для проверки редиректов, такие как Redirect Checker или Screaming Frog SEO Spider.
- Проверьте в инструментах для вебмастеров (например, Google Search Console) наличие ошибок перенаправления.
Возможные ошибки при настройке 301 редиректа:
- Циклический редирект: Когда одна страница перенаправляет на другую, а та, в свою очередь, возвращает пользователя на исходный адрес.
- Неправильный синтаксис в .htaccess: Даже небольшая ошибка может привести к некорректной работе сайта.
- Отсутствие перенаправления со всех возможных дублей: Например, без учета версий с www и без www.