
Настройка 301 редиректа в файле .htaccess, что такое 301 Permanent Redirect и код состояния HTTP 301, и другое.
Прочитав статью, вы узнаете: чем 301 отличается от 302, как не потерять вес сайта при переезде, какие шесть строчек кода решают 90% задач и почему редирект может не работать даже при идеальном синтаксисе. В конце — чек-лист для самопроверки и мнение нашего маркетолога.
Настройка 301 редиректа в файле .htaccess
Содержание
- Что такое 301 Permanent Redirect и код состояния HTTP 301?
- Разница между 301 и 302 редиректом
- Правила настройки Redirect, RewriteRule и RewriteCond
- Для чего используется перенаправление?
- Способы настроить редирект 301
- Редирект для PHP
- Редирект 301 в разных панелях управления хостингом
- Особенности редиректа для популярных CMS
- Настройка кириллических доменов .РФ
- Как узнать, что переадресация работает правильно
- Что делать, если 301 редирект не работает?
- Чек-лист чтобы ничего не забыть перед настройкой редиректа
- Заключение

Команда NewPoint продолжает просвещать своих дорогих клиентов и подписчиков, и сегодня мы хотели бы поднять важную и сложную тему редиректа. Мы могли бы дать Вам готовый код, но толка от этого было бы мало. Лучше мы разложим все по полочкам, раскроем все нюансы, чтобы Вы потом смогли ориентироваться в техническом смысле предложенного кода и выбирать подходящий вариант, исходя из условий.
Итак, если Вам надоело оставаться в неведении, приготовьтесь узнавать много нового.
Что такое 301 Permanent Redirect и код состояния HTTP 301?
Редирект — это перенаправление с одной страницы на другую. Переходя по ссылке на страницу с редиректом, пользователь может даже не узнать, что его отправили на другую площадку. Делается это для того, чтобы актуализировать ссылку: подменить ресурс более актуальным. Например, заменить http-страницу на ее https-версию.
Редирект может работать на стороне сервера или в браузере. Серверный вариант (через .htaccess или конфиги Nginx) — самый быстрый и правильный. Браузерный редирект через мета-теги почти не используется в SEO, потому что медленный и хуже передает вес. Так что забудьте про JavaScript и meta refresh, то работаем через сервер.
Permanent Redirect 301 или код состояния 301 — одна из популярных разновидностей редиректа. Она позволяет настроить сервер так, чтобы в ответ на запрос браузера он выдавал сообщение о том, что сайт «переехал», причём на постоянной основе. Браузер понимает, что страница больше не доступна по текущему адресу и совершает переход по новому. При этом старый URL становится недействительным, а его вес перемещается на новый адрес.
Разница между 301 и 302 редиректом
Класс редиректов 3хх достаточно широкий, но наиболее известны из них 301 и 302. Их очень легко спутать, однако для поисковых роботов эти коды имеют принципиальную разницу.
301 Moved Permanently — постоянный редирект. Эта комбинация сигнализирует роботу о том, что старый ресурс окончательно перемещен на новую площадку, а значит старый домен можно удалить из базы. Используется данный редирект для «переезда» на новый домен, для подключения новой CMS и для склейки идентичных страниц.
302 Temporary Redirect — временный редирект. Он говорит о временном перемещении сайта или отдельных его страниц. Как правило, используется, когда на основной площадке проводятся технические работы.
Раньше считалось, что при 301 редиректе страница теряет до 15% веса. Актуальные данные от Google говорят другое: при правильной настройке 301, 302 и даже 307 редиректов вес передается полностью. Но есть условие — новый URL должен быть реально похож на старый по смыслу. Не пытайтесь перекинуть страницу с кошками на раздел с банковскими картами, толку не будет.
Последствия для поисковой выдачи также неоднозначные:
- При 301 редиректе в поисковой выдаче отображается новый URL, старый игнорируется.
Однако на эту смену требуется время, Google рекомендует сохранять статус страницы в течение года, чтобы не «сбить» выдачу. - При 302 редиректе поисковая система хранит старый URL в течение полугода, в это время выдавая новую ссылку. По прошествии полугода редирект получает статус постоянного.
Поисковые системы с подозрением относятся к 302 коду, так как нередко вебмастера упускают сроки, а затем пытаются вернуть настройки. Да и злоупотребление данным редиректом при черном SEO добавило негативного отношения. Поэтому, если Вам дорога репутация ресурса и его положение в выдаче, лучше не рисковать и пользоваться 301 редиректом в .htaccess.
Правила настройки Redirect, RewriteRule и RewriteCond
Существует несколько директив, с помощью которых совершается перенаправление пользователя.
Директива Redirect в htaccess
Синтаксис:
Redirect [status] /oldpage http://newpage
Стандартное перенаправление, которое используется чаще всего. В скобках вместо status необходимо указать код редиректа: 301 или 302. Страница «oldpage» должна быть прописана
в формате без указания полного адреса сайта, но с указанием полного относительного адреса URL начиная со слэша «/», то есть нужно указать именно корень сайта.
Адрес «newpage» прописывается полностью, то есть с названием домена и протокола http
или https.
Пример:
Redirect 301 /oldpage.php https://htaccess.ru/newpage.php
Пример:
Redirect 301 /oldpage.php https://htaccess.ru/newpage.php
Директива RewriteRule
Синтаксис:
RewriteRule Шаблон Подстановка [коды]
Директива RewriteRule диктует правила перехода на новую платформу. Если проводится внешний редирект, URL меняется в строке браузера — «[R=301,L]». При внутреннем редиректе URL не меняется — «[R=301]» или «[L]».
Директива RewriteCond
Синтаксис:
RewriteCond Сравниваемая_Строка Условие
Директива RewriteCond задает условия, при которых будут выполняться правила RewriteRule. Такими условиями могут стать браузер, IP-адрес, заголовок и т.д.
Для чего используется перенаправление?
Редирект активно используется вебмастерами, так как полезен в различных обстоятельствах:
- При переезде сайта на новый домен. Чтобы не потерять трафик, направляющийся на старую страницу, создается перенаправление.
- Установка SSL-сертификата. Позволяет перенаправить пользователь со страниц с http на адрес с префиксом.
- Смена URL страницы. Это событие может быть связано со сменой CMS или с SEO-оптимизацией.
- Перенос разделов на субдомены.
- Для концентрации трафика с разных доменных зон в одной. Вебмастер покупает домены example.com, example.ru, example.net, example.org и example.biz и на четырех последних сайтах настраивает редирект на example.com.
- Для показа мобильным пользователям специальной версии.
Оставьте свои контакты и получите консультацию от нашего специалиста БЕСПЛАТНО.
Телефон*:
Способы настроить редирект 301
В зависимости от площадок, с которой перенаправляется, и на которую направляется поток трафика, используется различный синтаксис редиректа.
С одной страницы на другую
Данный редирект раз и навсегда изменит URL страницы и позволит избавиться от дублей
и устаревших материалов.
Синтаксис:
Redirect 301 /oldpage/ http://site.ru/newpage/
Более подробный синтаксис того же редиректа:
RewriteCond %{REQUEST_URI} ^/oldpage/$
RewriteRule ^.*$
http://site.ru/newpage/? [R=30
После сохранения такого кода будет осуществляться постоянная переадресация со старой страницы на новую, раздел старой страницы будет удален из поиска, а новой странице передастся весь ее вес.
Склейка зеркал сайта (www / без www)
Подобная работа проводится в том случае, когда под один сайт приобретается сразу несколько доменов, различающихся лишь наличием или отсутствием тройного W.
301 редирект с ресурса с www на платформу без www, при котором главным зеркалом считается домен без www, осуществляется при помощи следующей комбинации:
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
Обратный редирект, при котором главным зеркалом считается домен с www, можно реализовать через код:
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)$ http://www.%1/$1 [L,R=30
Таким образом обе страницы связываются, и трафик не разделяется.
С http на https
Чтобы в поиск не попадали дубли, а пользователи не заходили на страницы с разными протоколами, прописывается данный редирект. Его итогом будет добавление ко всем URL протокола https. Провести подобную работу можно на разных уровнях.
Для всего сайта
Чтобы полностью перенаправить сайт, необходимо в файле .htaccess добавить следующие строки:
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
При ряде обстоятельств такая комбинация может не сработать. В таком случае просто замените ее следующим кодом:
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Если же и после этого изменения остается циклическое перенаправление, введите:
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Редирект — дело сложное, поэтому и третий код не панацея. Если он не сработал, введите:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/page.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Это должно помочь и все пользователи и поисковые системы будут перенаправляться на домен
с протоколом https, но SEO-данные при этом останутся неизменными.
Постранично
Если Вам необходимо перенести весь сайт, кроме одной страницы, используйте постраничный редирект. Он прописывается следующим образом:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/page.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
После этого все страницы, кроме указанной, будут перенаправлены.
Для одной страницы
Если же, наоборот, необходимо перенаправить единственную страницу, добавьте 4 строчки кода:
RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/page.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
С https на http
Чтобы провернуть обратный редирект и лишить всех страниц SSL-сертификата, используйте следующую комбинацию синтаксиса:
RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
Это должно связать страницы доменов и дать им протокол http.
С 404 Not Found
Чтобы перенаправлять пользователей с несуществующих страниц на главную или любую другую страницу, также можно использовать редирект. Однако, поисковые системы не любят обилие связок и считают необходимым указывать ошибку 404, поэтому работать нужно с осторожностью.
Синтаксис:
ErrorDocument 404 http://www.site.com/301.html
В итоге все обращения к 404 страницам будут завершаться на главной странице сайта.
Итогом данного редиректа будет являться перенаправление всех обращений к страницам 404 на главную страницу сайта.
Со страниц со слешем на без слеша
Чтобы привести URL к единому формату и исключить все дубли в поиске, желательно провести редирект для сайтов без слэша.
Синтаксис:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]
В итоге слэш просто удалится.
Со страниц без слеша на слеш
Можно провернуть и обратную операцию. Для этого пропишите:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]
Результат — добавленный слэш на страницах без него.
Один (а не два последовательных!) 301 редирект на без www и с слешем на конце адреса страницы
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1/ [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} ![^\/]$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)$ http://%1/$1/ [L,R=301]
Один (а не два последовательных!) 301 редирект на c www и со слешем на конце адреса страницы
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://www.%1/$1/ [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)$ http://www.%1/$1/ [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} ![^\/]$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]
Один (а не два последовательных!) 301 редирект на c www и без слеша на конце адреса страницы
RewriteCond %{REQUEST_URI} ^\/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} \/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)\/$ http://www.%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)$ http://www.%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} \/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)\/$ http://www.%1/$1 [L,R=301]
Один (а не два последовательных!) 301 редирект на без www и без слеша на конце адреса страницы
RewriteCond %{REQUEST_URI} ^\/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} \/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} \/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]
Только адреса site.ru/index.php на основное зеркало site.ru
Чтобы перенести сайт без GET-параметров, пропишите в файле:
RewriteCond %{REQUEST_URI} /index.php
RewriteCond %{QUERY_STRING} ^\z
RewriteRule ^(.*)$ http://site.ru/? [R=301,L]
Всех адресов с index.php и GET параметрами на страницы только с GET параметрами
Проводится при помощи команды:
RewriteCond %{REQUEST_URI} /index.php
RewriteRule ^(.*)$ http://site.ru/ [R=301,L]
Итог: index.php в url будет вырезан.
Для index.php, index.html или index.htm
Провести массовую склейку на любой CMS, например, Joomla, можно при помощи кода:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/
RewriteRule ^(.*)index\.(php|html|htm)$ http://site.ru/$1 [R=301,L]
Url с GET параметрами на статический
Есть 2 варианта переноса сайта с динамическим-URL на статический:
1 вариант — простой адрес с GET параметром:
RewriteCond %{QUERY_STRING} ^id=229
RewriteRule ^.*$ /supermodel/? [R=301,L]
2 вариант — со страницы и GET параметром:
RewriteCond %{REQUEST_URI} /test/
RewriteCond %{QUERY_STRING} ^id=229
RewriteRule ^.*$ /supermodel/? [R=301,L]
Каждая страница одного домена на такой же адрес другого url
Подобная операция совершается при помощи кода:
RewriteCond %{REQUEST_URI} (.*)
RewriteRule ^(.*)$ http://site.ru/$1 [L,R=301]
Оставьте свои контакты и получите консультацию от нашего специалиста БЕСПЛАТНО.
Телефон*:
Редирект для PHP
PHP— это сервероориентированный язык, поэтому такой вид редиректа будет проводиться
на уровне сервера, а не браузера, что обеспечивает высокую скорость работы. При этом каждой страничке, на которую будет производиться редирект, присваивается свой уникальный REFERER, а это значит, что скрыть страницу-источник не получится.
Чтобы редирект сработал, его чтение должно проводиться в первую очередь — до того, как
на экран будет выведен первый символ. Поэтому ставить пробел перед <? нельзя.
Код редиректа на примере файла index.php:
<?php
header («Location: https://stokrat.org/», TRUE, 302);
?>
или
<?php
header («Location: https://stokrat.org/», TRUE, 301);
?>
Если Вы подключаете 302 редирект, выбираете первый вариант; если 301 — второй.
Дело в том, что через PHP, как правило, настраивают именно временное перенаправление.
Редирект 301 в разных панелях управления хостингом
Мы разберем две наиболее популярные панели — Cpanel и ISPmanager.
Чтобы настроить редирект в Cpanel, перейдите в блок «Домены» => «Перенаправления». Появится окно настройки, где нужно выбрать:
- тип — постоянный 301;
- https://www — выбрать старый домен сайта;
- перенаправляет на — адрес нового домена;
- поставить галочку напротив «Перенаправлять только с www».
Сохраните настройки и перенаправление готово.
Через ISPmanager можно править файлы nginx.config или .htaccess, но вся работа уже сделана
за Вас. К примеру, для настройки редиректа https/http достаточно просто убрать галочку с соответствующего пункта в разделе «WWW-домены».
Файл .htaccess работает только на серверах Apache. Сейчас многие сидят на Nginx, но там нет .htaccess. Настройка делается через конфиги или панель хостинга. Если у вас Tilda, Wix или Readymag, искать .htaccess вообще бесполезно, ведь редиректы прописываются в разделе SEO в админке. Не лезьте в код, если не уверены.
Особенности редиректа для популярных CMS
CMS-системы облегчают процесс настройки редиректа вплоть до пары кликов.
Опишем особенности взаимодействия с различными платформами.
WordPress
Чтобы перенаправить страницу, Вам нужно скачать плагины из панели управления. Зайдите
в «Плагины» -> «Добавить новый». Из доступных выберите необходимый и скачайте.

Yoast SEO — самый популярный плагин для оптимизации сайтов. Он обладает множеством функций, одной из которых является «перенаправление».
Для использования этой функции, в разделе «Перенаправление» выберите код «301 Перемещено окончательно». Затем введите старый URL-адрес и новый URL-адрес, на который должна вести страница. После добавления перенаправления оно сохраняется в списках, которые в будущем можно редактировать.
Yoast справляется, но когда у вас сотни удаленных товаров и старых страниц, управлять редиректами через него неудобно. Возьмите бесплатный плагин Redirection — он логирует все 404 ошибки и предлагает сам создать редирект на лету. Или Rank Math SEO Pro, если готовы доплатить за удобную таблицу.
OpenCart
Чтобы совершить редирект через OpenCart достаточно зайти в «Менеджер 301 редиректов»
и выбрать необходимый вариант перенаправления.
Битрикс
В Битриксе Вам нужно обратиться к модулю «Редирект мастер», но за него придется доплатить.
В оплаченном меню стоит выбрать свой вид редиректа и активировать его.
Joomla
Найти компонент, отвечающий за редирект в Joomla, можно в меню «Компоненты» — > «Перенаправление». Здесь Вы увидите все имеющиеся редиректы и сможете создать новый, заполнить все поля и сохранить настройки. После этого редирект активируется.
Настройка кириллических доменов .РФ
Для доменов в зоне РФ действуют все те же правила, но только все кириллические символы необходимо заменить на альтернативный код на латинице. В частности, сама зона .рф преобразуется в .xn--p1ai.
Далее представлены синтаксисы для доменов в зоне РФ.
301 редирект с одного домена на другой
RewriteCond %{HTTP_HOST} ^xn-...\.xn--p1ai$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
Редирект на папки со слешем на конце
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..{1,10}$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://www.site.ru/$1/ [L,R=301]
Редирект на папку без слеша — убираем слеш на конце
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ http://www.site.ru/$1 [R=301,L]
Переадресация с домена в папку другого сайта
RewriteCond %{HTTP_HOST} ^si-te\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/si-te/ [R=301,L]
Редирект со всех страниц кроме определенной папки
Кроме папки администратора bitrix #
RewriteRule ^bitrix/ /bitrix/admin/ [L,R=301]
RewriteRule ^(.*)$ http://www.newsite.ru/new/ [L,R=301]
Переадресация всех файлов папки на конкретный файл
RewriteRule ^dir(.*)$ /new-file.php [L,R=301]
Переадресация файлов папки на другой файл с исключением
RewriteRule ^dir/no-file.html /no-file-new.html [L,R=301]
RewriteRule ^dir(.*)$ /all.php [L,R=301]
Редирект замены расширений файлов — с html на php
RedirectMatch 301 (.*)\.html$ http://www.new-site.ru$1.php
Редирект с index.php на корень сайта
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.site.ru/ [R=301,L]
Редирект всех индексных страниц на корень
RewriteRule ^(.*)index\.php$ http://www.site.ru/$1 [R=301,L]
Переадресация с поддомена на основной домен
RewriteCond %{HTTP_HOST} ^test.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru%{REQUEST_URI} [R=301,NC,L,QSA]
Редирект страницы из различных директорий
RewriteRule [^abc]/unique-file.html /unique-file.html [R=301,L]
Создаем ЧПУ-копию динамических страниц
RewriteRule ^testovyi/test/?$ /studio/news/detail.php?ID=230354&PAGEN_2=11 [NC,L]
Код позволяет создать копию страницы с относительным адресом
/studio/news/detail.php?ID=230354&PAGEN_2=11 по адресу /testovyi/test/
Переадресация с https на http
RewriteCond %{HTTPS} "on"
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA]
Настройка ответа 403 для спама по REFERER
RewriteCond %{HTTP_REFERER} ref-spam-site.ru [NC,OR]
RewriteCond %{HTTP_REFERER} another-ref-spam.ru [NC]
RewriteRule .* - [F]
Обработка ошибки 404 в .htaccess
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.site.ru/dir/");
exit();
?>
Как узнать, что переадресация работает правильно
Узнать, корректен ли код 301 редиректа можно при помощи браузера. Введите в адресную строку URL страницы, с которой совершается переадресация. В идеале Вы должны увидеть ту страницу и тот URL, на которую был настроен редирект.
После того, как Вы настроили 301 редирект, его необходимо проверить на корректность работы. Для этого введите в адресной строке своего браузера URL страницы, с которой была сделана переадресация. Если Вы видите новую страницу, то есть, ту, на которую сделали редирект
— то все корректно работает.
Также можно заглянуть в Яндекс.Вебмастер, открыть раздел «Инструменты» затем «Проверка ответа сервера». В поле «Опрашиваемый URL» введите адрес старой страницы. Вы должны получить код статуса http — «301 Moved Permanently».
Проверка для тех, кто не боится командной строки
Браузер и Вебмастер — хорошо. Но лучший способ увидеть всю цепочку редиректов — cURL. Если есть доступ к SSH или вы на Mac/Linux, введите:
curl -I https://ваш-сайт.ру/старый-адрес
В ответ увидите коды. Если после 301 идет 200 это отлично. Если три редиректа подряд, то сайт тормозит, а поисковики зря тратят краулинговый бюджет.
Что делать, если 301 редирект не работает?
Если проверка прошла неудачно и редирект не реализован проверьте ряд параметров:
Синтаксические ошибки
Любой лишний пробел, перенос строки или точка способны помешать работе команды. Копируйте код аккуратно, не добавляя комментариев, номеров строк и т.д.
Использование URL адреса с параметром
«Упрощенный» вариант редиректа в файле .htaccess вида: Redirect 301 «oldpage» «newpage»
— который может уместиться в одну строку, работает исключительно с URL без параметров.
Команда типа Redirect 301 /index.php?productID=1109 http://dh-agency.ru/for-seo/ работать не будет. Замените ее на Redirect 301 /index.php http://dh-agency.ru/category/for-seo-professionals/.
Некорректное расположение
PHP-код, отдающий заголовок, должен находиться над всеми последующими командами
и выводами.
Отключен модуль mod_rewrite
Модуль mod_rewrite должен быть подключен и активирован — без него редирект не заработает.
Конфликт с движком
Вы все сделали правильно, а редирект не работает? Возможно, CMS перехватывает управление. В WordPress проверьте настройки адресов сайта в разделе «Общие». В Bitrix открывайте файл urlrewrite.php — он имеет приоритет над .htaccess. Иногда проще настроить редирект через админку сайта, чем мучить серверный файл.
Чек-лист чтобы ничего не забыть перед настройкой редиректа
Перед тем как сохранить .htaccess и выдохнуть, пробегитесь по пунктам:
- Сделана резервная копия текущего .htaccess
- Нет лишних пробелов и пустых строк в начале файла
- Все URL прописаны без кириллицы (кроме зоны .рф, там своя история)
- Для доменов .рф использован punycode (xn--…)
- Убедились, что модуль mod_rewrite на хостинге включён
- Нет конфликта с настройками самой CMS
- Цепочка редиректов не длиннее 2 шагов
- Проверили через cURL или любой онлайн-инструмент (например, httpstatus.io)
Заключение
301 редирект — инструмент полезный, но не для всех болезней. Не надо лепить его куда попало. Если переезжаете на час, то берите 302. Если склеиваете дубли, то 301 в помощь. Если пытаетесь сбежать от фильтра это не поможет, проблемы переедут с вами.
Статья получилась объёмной, но главное вынесите для себя: аккуратная работа с .htaccess, один-два редиректа в цепочке, проверка после каждого сохранения. И да, бэкап. Еще раз — бэкап.
Автоворонка продаж, что это? Пошаговая схема по автоматизации продаж, которая будет продавать, пока вы спите
Что такое медиаплан и как его составить
Интеграция CRM в 2026 году. Как связать CRM с сайтом, телефонией и мессенджерами без потери данных
Эффективные рассылки для фулфилмента: как привлекать и удерживать клиентов
Медицинский маркетинг: как продвигать клинику в интернете
Стратегии продвижения услуг логистики и импорта товаров из Китая. Полное руководство по привлечению B2B-клиентов
Где искать клиентов на ремонт и отделку? Обзор источников, которые работают в 2026 году
Где искать клиентов юристам и адвокатам в 2026 году? 35 онлайн и офлайн каналов
Что такое лидогенерация и зачем она нужна?
15 эффективных способов рекламировать онлайн-курсы в 2026 году
Как настроить рекламу службы по контракту и СВОв 2026 году? Инструкция по настройкам и прохождению модерации
Заспамленность и вода в тексте: что это такое
Как продавать франшизу в 2026 году: ключевые стратегии маркетинга и работающие каналы продвижения
Лид-магнит и трипваер. Что это такое и в чем разница?
Управление репутацией в интернете – что это такое и зачем нужно
Как привлекать клиентов в кровельном бизнесе в 2026 году? Эффективные каналы продвижения
Интернет-маркетинг для начинающих: что это, зачем и для кого
Как увеличить продажи товара на маркетплейсах в 2026 году
Как продать сельхозтехнику дорого и без простоя: 7 шагов, которые реально работают в 2026 году
Особенности и стратегии продвижения в маркетинге для производственных предприятий в 2026 году
Как вернуть ушедших клиентов и восстановить лояльность. Стратегия возврата для владельцев бизнеса, этапы и 15+ инструментов
Продвижение услуг по регистрации товарных знаков в интернете: полное руководство по привлечению клиентов
Реклама для рекрутинга. Как привлечь соискателей на вакансии под ключ?
Увеличение оптовых продаж: стратегии продвижения, привлечения клиентов и увеличения объема закупок
Как создать программу лояльности для клиентов, которая приносит прибыль, а не убытки. Все от разработки системы, примеров и оценки эффективности
Почему ваш бизнес теряет деньги? Главные ошибки в рекламе, которые совершают даже опытные маркетологи и собственники
Как открыть интернет-магазин с нуля: пошаговая инструкция, которая не даст вам прогореть
Как бизнесу не потерять в прибыли с повышением налога в 2026 году?
Почему лиды с рекламы не закрываются в продажу и как это исправить? Разбираем ошибки отдела продаж
Эффективное продвижение салона красоты
Что такое A/B-тестирование и почему это может быть главным инструментом для роста
Применение нейросетей в рекламе и маркетинге
Какие существуют виды рекламы в интернете в 2026 году
Как продавать буровое оборудование и находить заказчиков на бурение с нуля
Антикризисное управление предприятием: для кого, как и зачем это нужно
21 способ привлечения клиентов для мебельного бизнеса на заказ. Полный гид по онлайн и офлайн-продвижению
Автоворонка продаж — что это и как ей пользоваться?
Как фотографу находить клиентов и строить репутацию, которая продает
Стратегия продвижения фулфилмента на Авито: как привлекать клиентов с площадки
Как продвигать интернет-магазин: 15 рабочих способов привлечь клиентов и поднять продажи
Реклама банкротства физических лиц: как найти клиентов на БФЛ в условиях новых ограничений
Что такое маркетинговая стратегия? Как выбрать, не запутаться и не слить бюджет
Как привлекать клиентов через рассылки ВКонтакте в 2026 году
Быстрая настройка рекламы в Instagram и Facebook
Где найти клиентов на строительство в 2026 году? Стратегии продвижения для строительной компании
Тариф Авито «Оплата за просмотры»: полное руководство по настройке, экономии бюджета и повышению продаж
Как продвигать бизнес на Яндекс Картах в 2026: советы и инструкция по настройке рекламы на картах
B2B-маркетинг: как продвигать бизнес для бизнеса в интернете в 2026 году?
Новые правила в рекламе банкротства в 2026 году. Разбираем закон, систему штрафов и рабочие стратегии привлечения клиентов
Реклама малого бизнеса. Как не сливать бюджет, а увеличивать продажи?
Как можно продвигать бизнес в Telegram
Стратегии продвижения на рынке спецтехники: как увеличить продажи и прибыль от аренды
Как увеличить продажи в любом бизнесе: стратегии и инструменты 2026 года?
Как привлечь клиентов в B2B: основные источники?
B2B-маркетплейс: что это, как работает и как выбрать лучшую площадку для бизнеса в 2026 году
Эффективные методы продвижения кредитов и займов в интернете: стратегии, инструменты и кейсы для МФО
Как стабильно получать клиентов для детской спортивной секции?
Яндекс Бизнес для клиник: как продвигать медцентр на Картах и получать пациентов
Какие гарантии результата интернет-рекламы может предоставить клиенту маркетинговое агентство? Мифы и реальность
Продвижение стоматологии: что учесть в рекламе клиники
Как найти клиентов для фулфилмента: эффективные стратегии продвижения
Как продавать сложное оборудование онлайн? Стратегия продвижения в B2B секторе
Где искать кандидатов на службу по контракту (СВО) в 2026 году. Полный разбор каналов рекламы и их эффективности
Как рекламировать системы видеонаблюдения в 2026 году? Стратегия продвижения, инструменты и ошибки в рекламе
Стратегия продвижения в интернет-маркетинге: как составить план, который приводит к заявкам, а не отчетам
Как привлекать клиентов ведущим и ивент-агентствам: стратегии, реклама, кейсы
Бесплатное и платное продвижение на Авито в 2026 году. Полное руководство от настройки до продаж
Как продвигать сезонный бизнес

Приведем новых клиентов, заинтересованных в Ваших услугах!
Многие наши клиенты воспринимают 301 редирект как волшебную кнопку «почини мне позиции». Это не так. Если старую страницу любили люди и на неё вели ссылки, а новую вы сделали на коленке, то никакой редирект не спасет. Поисковики умные, они смотрят на поведение пользователя после перехода.
И еще момент. Постоянные переклейки доменов, склейки зеркал, смена протоколов это стресс для сайта. Каждый такой манёвр лучше согласовывать с маркетингом, а не делать в пятницу вечером. Потому что в понедельник может оказаться, что весь трафик из соцсетей, где зашиты старые ссылки, ушёл в никуда из-за одной опечатки в .htaccess. Техника дело важное, но без стратегии это просто набор символов в файле.