Найти в Дзене
INTEC - технологии роста

Что такое 301 редирект и как его настроить

Бывают ситуации, когда сайту требуется автоматическое перенаправление пользователей с одного адреса на другой. Этот процесс называется редиректом. Необходимость сделать редирект может возникнуть из-за многих причин: переезд сайта на обновленный адрес, изменение URL страниц и т. п.
Чтобы пользователи могли найти сайт по новому адресу, нужно сделать так, чтобы их автоматически «перекидывало» со старого веб-ресурса на новый. Правильно сделать это можно с помощью постоянного редиректа, который называется 301 Redirect. Поговорим о нем подробнее. Бывают ситуации, когда сайту требуется автоматическое перенаправление пользователей с одного адреса на другой. Этот процесс называется редиректом. Необходимость сделать редирект может возникнуть из-за многих причин: переезд сайта на обновленный адрес, изменение URL страниц и т. п. Чтобы пользователи могли найти сайт по новому адресу, нужно сделать так, чтобы их автоматически «перекидывало» со старого веб-ресурса на новый. Правильно сделать это м
Оглавление

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

Чтобы пользователи могли найти сайт по новому адресу, нужно сделать так, чтобы их автоматически «перекидывало» со старого веб-ресурса на новый. Правильно сделать это можно с помощью постоянного редиректа, который называется 301 Redirect. Поговорим о нем подробнее.

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

Чтобы пользователи могли найти сайт по новому адресу, нужно сделать так, чтобы их автоматически «перекидывало» со старого веб-ресурса на новый. Правильно сделать это можно с помощью постоянного редиректа, который называется 301 Redirect. Поговорим о нем подробнее.

Определение и виды редиректов

Редирект — это механизм автоматического перенаправления пользователя или поискового робота с одного URL-адреса на другой. Он используется в ситуациях, когда запрашиваемая страница больше не существует по указанному адресу: например, при изменении структуры сайта, переезде на новый домен, объединении дублирующихся страниц или переходе с HTTP на HTTPS.

Перенаправление может осуществляться на стороне сервера, например, через настройки .htaccess в Apache, конфигурацию Nginx или PHP-скрипты, или на стороне клиента — с помощью JavaScript или HTML-тега . Однако серверный редирект предпочтительнее: он выполняется до загрузки содержимого страницы, не создает дополнительной нагрузки на браузер и корректно обрабатывается поисковыми системами. В отличие от клиентских методов, серверные редиректы не влияют на скорость загрузки и не нарушают поведенческие метрики.

Наиболее распространенные HTTP-статусы для редиректов:

  • 301 Moved Permanently (постоянный редирект). Указывает, что запрашиваемый ресурс навсегда перемещен на новый URL. Поисковые системы интерпретируют код 301 как сигнал к передаче «веса» (SEO-значимости, включая ссылочную массу и поведенческие сигналы) со старого адреса на новый. После настройки 301-редиректа старая страница фактически становится недоступной напрямую, а ее индексация прекращается — поисковик постепенно заменяет старый URL на новый в результатах выдачи.
  • 302 Found / 307 Temporary Redirect (временный редирект). Сообщает, что перенаправление временное, и оригинальный URL по-прежнему актуален. Такой редирект не передает SEO-вес и не приводит к замене страницы в поисковой выдаче. Он подходит, например, при временной замене страницы акцией или техническом обслуживании.

Важно правильно выбирать тип редиректа: использование 302 вместо 301 при постоянном переезде страницы может негативно сказаться на SEO-показателях, замедлить индексацию нового адреса и привести к дублированию контента. Поэтому при планировании масштабных изменений структуры сайта рекомендуется проводить аудит редиректов и настраивать цепочки перенаправлений с учетом логики и долгосрочной стратегии продвижения.

Настройка 301-редиректа через файл .htaccess

Наиболее гибкий и часто используемый способ настройки 301 редиректа на хостингах с веб-сервером Apache — редактирование файла .htaccess. Этот скрытый конфигурационный файл позволяет задавать правила перенаправления на уровне сервера без изменения исходного кода сайта.

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

Сайты http://названиесайта и http://www.названиесайта поисковики считают разными, хотя это адреса одного и того же ресурса.

Поисковики один сайт проиндексируют, а другой будет расцениваться как дубль, что может повлиять на его продвижение. Чтобы этого не случилось, нужно «склеить» сайты — прописать 301 редирект в .htaccess.

Если поисковые системы сначала проиндексировали версию с www, то главным зеркалом будет адрес вида www.site.ru, соответственно, в файл .htaccess нужно добавить редирект с адреса без www на www.

Выглядит это так:

RewriteCond %{HTTP_HOST} !^www.name.site.ru$

RewriteRule ^(.*)$
http://www.name.site.ru/$1 [L,R=301]

Напротив, если поисковики проиндексировали первой версию без www, нужна переадресация с адреса вида www.site.ru на site.ru, и главным зеркалом будет адрес вида site.ru. В файл нужно прописать:

RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]

RewriteRule .* http://%1/$0 [L,R=301]

Редирект постранично

Иногда редирект на https нужен на всех страницах, кроме одной. В такой ситуации логично использовать постраничный редирект:

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteCond %{REQUEST_URI} !^/page.php

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Если нужно сделать редирект с http на https только одной страницы, например, page.php, вставьте в файл следующую конструкцию:

RewriteEngine On

RewriteCond %{HTTPS} =off

RewriteCond %{REQUEST_URI} =/page.php

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

Изменение домена

Если вам нужно перейти на другой домен и сохранить все позиции SEO, внесите в файл .htaccess:

RewriteCond %{HTTP_HOST} ^www.old_name.ru$ [NC]

RewriteRule ^(.*)$
http://new_name.ru/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^old_name.ru$ [NC]

RewriteRule ^(.*)$
http://new_name.ru/$1 [L,R=301]

Переадресация для URL с параметрами и без них

Как сделать редирект для URL без параметров? Если нужно изменить URL страницы, т. е. перенести информацию с одной страницы на другую без потери значений SEO, пропишите в файл .htaccess следующее:

RewriteRule ^(.*)old_page.html$ http://vash-sait.ru/new_page.html [R=301,L]

Рассмотрим, как выполнить редирект с параметрами. Для примера возьмем URL http://name.site/articles.php?section=1, где параметр — это section=1. Чтобы сделать редирект, пропишите такую конструкцию:

RewriteCond %{QUERY_STRING} section=1

RewriteRule ^index.php
http://name.site/articles.php? [R=301,L]

Переадресация с index.php на главную

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

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/

RewriteRule ^index.php$
http://name.site/ [R=301,L]

Редирект со страниц со слешем на без слеша (для всего сайта)

Чтобы в файле .htaccess не было дублей, используйте конструкцию:

RewriteCond %{REQUEST_URI} !\?

RewriteCond %{REQUEST_URI} !\&

RewriteCond %{REQUEST_URI} !\=

RewriteCond %{REQUEST_URI} !\.

RewriteCond %{REQUEST_URI} ![^/]$

RewriteRule ^(.*)/$ /$1 [R=301,L]

Можно также применить более короткий вариант:

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_URI} ^(.+)/$

RewriteRule ^(.+)/$ /$1 [R=301,L]

Редирект со страниц без слеша на слеш (для всего сайта)

Если нужны адреса со слешем, используйте такой вариант:

RewriteCond %{REQUEST_URI} !\?

RewriteCond %{REQUEST_URI} !\&

RewriteCond %{REQUEST_URI} !\=

RewriteCond %{REQUEST_URI} !\.

RewriteCond %{REQUEST_URI} !\/$

RewriteRule ^(.*[^/])$ /$1/ [R=301,L]

Постоянный редирект для Nginx

Обычно этот сервер используется на VPS-хостинге совместно с Apache. В нем для настройки 301 редиректа добавляют строки в конфигурационный файл nginx.config в секции server.

C www на без www

server {#...

if($host~ *
www.(.*)) {

set $host_without_www $1;

rewrite ^ (.*) $ http: //$host_without_www$1 permanent;

}#...

}

Без www на www

server {#...

if($host~ * ^ [ ^ .] + .[ ^ .] + $) {

rewrite ^ (.*) $ $scheme: //
www.$host$1 permanent;

}#...

}

Сохраните внесенные в файл изменения и перезапустите сервер.

301 редирект для разных панелей управления хостингом

Cpanel

Перейдите в блок «Домены», найдите «Перенаправления».

В появившемся окне выполните следующее:

  1. В строке «Тип» выберите «Постоянный 301».
  2. В строке «https://www» из списка выберите домен сайта (в качестве примера возьмем primer.ru).
  3. В строке «Перенаправляет на» укажите для домена адрес http://primer.ru.
  4. В блоке «Перенаправление www» выберите «Перенаправлять только с www».
  5. Сохраните изменения, нажав на «Добавить».

ISPmanager

В этой панели можно вносить изменения в файлы nginx.config или .htaccess. При этом панель имеет встроенный механизм редиректа. Так, чтобы настроить переадресацию на https/http, снимите галочку с соответствующего пункта в разделе «WWW-домены».

Beget

Настроить 301 редирект инструментами панели управления нельзя. Хостинг управляется с сервера Apache, поэтому редирект можно настроить с помощью файла .htaccess.

-2

Особенности редиректа для популярных CMS

1С-Битрикс

Чтобы «перебросить» пользователя на новую страницу сайта на «1С-Битрикс», отредактируйте файл .htaccess и внесите такой редирект:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^
www.sng-it.ru$ [NC]

RewriteRule ^(.*)$
http://sng-it.ru/$1 [R=301,L]

WordPress

WordPress — одна из самых популярных CMS. Она имеет десятки плагинов для настройки постоянного редиректа, например:

  • Redirection;
  • Simple 301 Redirects;
  • Quick Page;
  • SEO Redirection;
  • Safe Redirect Manager.

В качестве примера разберем редирект через плагин Redirection. Он настраивается через консоль сайта во вкладке «Инструменты» или через раздел плагинов. Для переадресации нужно заполнить два поля: Source URL и Target URL. В первой графе внесите старый адрес, а во второй — новый с www или без него.

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

-3

Автоматическое создание кода

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

Заключение

Для корректного восприятия сайта поисковыми системами, особенно в случаях наличия дублирующих URL (например, с www и без, HTTP и HTTPS, с конечным слешем и без), необходимо обеспечить постоянную и однозначную переадресацию на канонический адрес. В этом контексте 301 редирект является наиболее надежным и рекомендуемым инструментом: он не только устраняет дубли, но и передает накопленный SEO-вес новому URL, способствует сохранению позиций в выдаче и улучшению индексации.

Вместе с тем, его настройка требует внимательности и тестирования: ошибки в правилах, например, зацикливание, множественные перенаправления, использование 301 вместо 302 при временных изменениях, могут привести к недоступности страниц, снижению скорости загрузки и, как следствие, к падению трафика и позиций. Поэтому перед внедрением редиректов рекомендуется проводить аудит текущей структуры URL и проверять работу правил в инструментах вроде Google Search Console, «Яндекс Вебмастер» или специализированных SEO-анализаторов.

Подпишитесь на нас в Telegram

Получайте свежие статьи об интернет-маркетинге и актуальные новости о наших готовых решениях

Подписаться