Содержание
Краткое саммари
301 редирект нужен, когда URL изменился навсегда: при переезде сайта, переходе на HTTPS, смене структуры, склейке доменов с www и без www. Надежнее настраивать переадресацию на уровне сервера — в Nginx, Apache или панели хостинга. HTML- и JavaScript-редиректы оставляйте для редких задач, где серверный способ недоступен.
Кому стоит прочитать эту статью: владельцам сайтов, SEO-специалистам, вебмастерам, разработчикам и тем, кто переносит сайт на новый домен, меняет адреса страниц или исправляет дубли в поиске.
Зачем нужен 301 редирект
Редирект 301 — это код состояния HTTP, который сообщает браузеру и поисковому роботу: ресурс навсегда переехал на новый URL. Для поисковика главным становится конечный адрес. В отличие от 302 редиректа, который используют для временной переадресации, 301 подходит для постоянных изменений адреса страницы или домена.
При корректном 301 редиректе поисковые системы со временем объединяют сигналы старого и нового URL: ссылки, канонический адрес, внутренние переходы и другие данные. Точного процента передачи SEO-веса нет — результат зависит от качества настройки и соответствия новой страницы старой.
301 применяют при переходе с HTTP на HTTPS, для перенаправления на домен с www или без, при переезде домена, удалении страницы с сайта, если пользователь еще может попасть на нее по ссылке на сторонних источниках, при переработке структуры, для борьбы с каннибализацией запросов и в других случаях.
FAQ по разделу
301 редирект влияет на позиции?
Да, если помогает поисковику понять новый адрес страницы. Ошибки в цепочках, canonical или robots.txt замедляют переиндексацию.
Когда нужен 301, а когда 302?
301 используют для постоянного переезда URL. 302 подходит для временной переадресации, когда старый адрес скоро вернется.
Можно ли редиректить все старые страницы на главную?
Не нужно так делать, лучше вести пользователя на близкую по смыслу страницу, иначе поисковик может посчитать переход мягкой 404.
Как настроить 301 редирект: Nginx, Apache, PHP, HTML, JavaScript и cPanel
В документации Google по редиректам указано: после постоянного перенаправления нужно обновить сигналы на конечный URL. Проверьте canonical, внутренние ссылки, sitemap и hreflang, если сайт мультиязычный. Если эти элементы ведут на старый адрес, поисковик получает противоречивые сигналы и может дольше обрабатывать переезд.
Настроить переадресацию можно через панель управления хостингом или вручную. Самый надежный способ — серверный 301 редирект в Nginx или Apache. PHP используют точечно. HTML и JavaScript работают в браузере, поэтому для SEO их применяют только когда нет доступа к серверным настройкам.
У вас кириллический домен?
В шаблонах мы использовали «http://site.ru» для примера. Если у вас кириллический домен «сайт.рф», «сайт.рус» или другой, его нельзя использовать в таком формате. Переведите запись домена в формат Punycode с помощью любого конвертера, а потом уже вставляйте в код.
В настройках конкретного хостинга обычно подробно описано, как сделать редирект через панель управления. Для разных CMS есть специальные плагины для редиректов. Разберем способы для настройки вручную на примере редиректа на сайт с www или без него.
Редирект для Nginx
Для серверов на Nginx используйте файл nginx.conf или конфиг конкретного виртуального хоста. Добавьте правило в нужный блок server. Перед перезапуском проверьте конфигурацию командой nginx -t.
С домена с www на домен без www
server {
listen 80;
server_name www.site.ru;
return 301 https://site.ru$request_uri;
}
С домена без www на домен с www
server {
listen 80;
server_name site.ru;
return 301 https://www.site.ru$request_uri;
}
После изменения конфига перезапустите Nginx. В большинстве Linux-дистрибутивов подойдет команда «systemctl reload nginx» или «service nginx reload». Если nginx -t показывает ошибку, сначала исправьте конфиг.
Редирект для Apache
Если вы используете Apache, вам нужен файл .htaccess. Для доступа есть несколько вариантов:
- Используйте FTP и включите отображение скрытых файлов. Найдите .htaccess в каталоге public_html в папке с названием домена.
- Откройте панель управления хостингом, включите отображение скрытых файлов и найдите его через Диспетчер файлов.
Скачайте .htaccess, добавьте код редиректа и загрузите файл заново. Если файла .htaccess нет, его нужно создать.
На домен без www
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
На домен с www
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^site\.ru$ [NC]
RewriteRule ^(.*)$ https://www.site.ru/$1 [R=301,L]
Редирект через PHP
Действует на уровне сервера. Лучше использовать другой способ, потому что этот работает медленно. Через PHP перенаправление настраивают для сайтов, где редирект нужен на многих, но не на всех страницах.
Файл index.php расположен в корневой папке. Скачайте его и добавьте код или отредактируйте прямо в диспетчере файлов в панели управления хостингом.
Редирект через HTML
Редирект через HTML-код медленнее: он срабатывает на стороне браузера. Код нужно добавить в блок head страницы, с которой нужно перенаправить пользователя. В параметре content указывают задержку в секундах; для мгновенной переадресации ставят 0.
На домен без www
<meta http-equiv="refresh" content="0; url=http://site.ru/">
На домен с www
<meta http-equiv="refresh" content="0; url=http://www.site.ru/">
Редирект через JavaScript
Редирект настраивают и с помощью JavaScript, он работает на стороне браузера, как и HTML. Это медленный способ и не сработает, если у пользователя в браузере отключен JavaScript. Его обычно настраивают для редиректов с задержкой, если такое требуется.
Код для редиректа нужно добавить между и в код первой исходной страницы.
На домен без www
<script type="text/javascript">
window.location.replace("http://site.ru/");
</script>
Для задержки:
<script type="text/javascript">
setTimeout(function() {
location = "http://site.ru";
}, 5000);</script>
На домен с www
<pre><script>
window.location.replace("http://www.site.ru/");
</script></pre>
Через cPanel
cPanel — это платная панель управления веб-хостингом. В ней тоже можно настроить редиректы, причем не используя вводы кодов. Во вкладке «Домены» есть раздел «Перенаправления», там нужно настроить редирект.
На домен без www
- В списке выберите нужный домен.
- В поле «Перенаправляет на» пропишите его с префиксом http://.
- Поставьте отметку у «Перенаправлять только с www»
На домен с www
- В списке выберите нужный домен.
- В поле «Перенаправляет на» пропишите его с префиксом http://www.
- Поставьте отметку у «Не перенаправлять www»
FAQ по разделу
Где лучше настраивать 301 редирект?
На уровне сервера: в Nginx, Apache или панели хостинга. Так переадресация срабатывает быстрее и понятнее для поисковых роботов.
Нужно ли менять внутренние ссылки после редиректа?
Да, ссылки, canonical, sitemap и hreflang должны вести на новый URL, а не на старый адрес через редирект.
Как проверить редирект?
Откройте URL в браузере, проверьте код ответа в DevTools или используйте curl -I. В ответе должен быть 301 и корректный конечный адрес.
Генератор 301 редиректа: где создать код автоматически
Сгенерировать код для настройки редиректа можно и с помощью инструментов.
К примеру, с этим справится генератор 301 Redirect Code от RapidTables. Он формирует код для .htaccess, PHP, HTML, JavaScript и других вариантов. После генерации проверьте протокол: для современных сайтов обычно нужен HTTPS.

301 Redirect Generator от Webworkshop предлагает сформировать код для редиректа со страницы на страницу, с домена на домен и с директории на директорию. Отдельно есть окно для перехода на домен с www. Для редиректов на домен есть только код для Apache .htaccess, для страниц есть возможность выбора.

Batch RewriteRule Generator подходит для пакетной настройки редиректов. Вставьте пары старых и новых URL из таблицы, а сервис подготовит правила RewriteRule для .htaccess.

Почитать по теме: Как склеить домены для Яндекса и Google: руководство по переносу сайта
FAQ по разделу
Можно ли доверять генератору редиректов?
Да, но только если после генерации вы проверите код на тестовом домене или копии сайта.
Какой генератор выбрать для .htaccess?
RapidTables, WebWorkshop и Donat Studios подходят для базовых правил Apache.
Нужно ли удалять комментарии из сгенерированного кода?
Можно удалить, если они мешают. Но на работу правила они обычно не влияют.
301 редирект в 2026 году: рекомендации Яндекса и Google
- Поддерживайте 301 редиректы минимум год. Для домена, на который ведут внешние ссылки, лучше оставить их бессрочно: пользователи и роботы могут приходить по старым адресам спустя годы.
- Для Яндекса при переезде сайта используйте постраничный 301 редирект и инструмент «Переезд сайта» в Яндекс Вебмастере.
- Для Google обновите все сигналы на новый URL: canonical, внутренние ссылки, sitemap, hreflang и ссылки в навигации. Старые URL не должны оставаться основными в шаблонах сайта.
- Не стройте длинные цепочки. Правильная схема — один переход со старого URL сразу на конечный. Цепочки замедляют загрузку и расходуют краулинговый бюджет.
- Проверяйте безопасность. Не используйте открытый редирект, где адрес назначения можно подставить через параметр URL. Перед правками сделайте резервную копию конфигов и проверьте правила на тестовой странице.
- После настройки проверьте коды ответа: старый URL должен отдавать 301, конечная страница — 200. Затем обновите карту сайта и отправьте ее в панели вебмастеров.