# Настройка 301 редиректа: .htaccess, nginx, Битрикс и WordPress

URL: https://chugunov.pro/nastrojka-301-redirekta/
Обновлено: 30.09.2026.
Источник: chugunov.pro.

## Коротко

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

Сделать редирект можно на разных уровнях: в файле .htaccess на Apache, в конфигурации nginx, средствами CMS или в коде. Выбор зависит от сервера и задачи. Для переезда на HTTPS и смены домена надёжнее серверные правила, для отдельных страниц удобны модули CMS.

| Задача | Где лучше настроить | Инструмент |
| --- | --- | --- |
| HTTP на HTTPS | Сервер | .htaccess или nginx |
| www и без www | Сервер | .htaccess или nginx |
| Смена домена | Сервер | Правило для всего старого домена |
| Отдельные страницы | CMS или сервер | Модуль редиректов, Rank Math, .htaccess |
| Сотни адресов после смены структуры | Сервер | Карта соответствий map в nginx или набор правил |

## Основная мысль

**Редирект — это не техническая мелочь, а способ сохранить трафик и позиции при любом изменении адресов: каждый старый URL, на который есть ссылки или который есть в поиске, должен одним переходом вести на самую близкую по смыслу новую страницу.**

Чаще всего проблемы возникают не из-за отсутствия редиректов, а из-за неправильных. Все старые страницы отправляются на главную, редиректы выстраиваются в цепочки из трёх-четырёх переходов, вместо 301 стоит временный 302, а правила для HTTPS и www конфликтуют и создают бесконечный цикл.

Поэтому редиректы настраивают по плану: сначала список старых и новых адресов, затем правила, затем проверка каждого адреса. Этот порядок одинаков для WordPress, 1С-Битрикс и любого другого сайта.

## 301 редирект и другие коды: когда какой нужен

### Коды перенаправления

| Код | Значение | Когда использовать |
| --- | --- | --- |
| 301 | Перемещено навсегда | Смена адреса страницы, домена, протокола, структуры |
| 302 | Найдено, временное перемещение | Временная акция, техническая недоступность раздела |
| 307 | Временный редирект с сохранением метода запроса | Временное перенаправление форм и API |
| 308 | Постоянный редирект с сохранением метода запроса | Постоянное перенаправление, где важен метод POST |

Для SEO основное различие — между постоянным и временным перенаправлением. При 301 поисковик понимает, что старый адрес больше не актуален. При 302 он может продолжать держать в индексе старый URL.

### Когда нужно настроить редиректы

- Переход с HTTP на HTTPS.
- Выбор главного зеркала: с www или без.
- Смена домена или переезд на новый.
- Изменение структуры адресов: новые ЧПУ, перенос разделов.
- Объединение страниц с похожим содержанием.
- Удаление товаров или услуг, у которых есть близкая замена.
- Приведение адресов к единому виду: со слешем в конце или без.

### Когда редирект не нужен

Если страница удалена и замены нет, правильнее отдать код 404 или 410, чем перенаправлять на главную. Массовые редиректы на главную поисковики могут расценивать как «мягкую» 404, и пользы от них нет.

## Htaccess редирект: настройка на Apache

На хостингах с Apache редиректы чаще всего прописывают в файле .htaccess в корне сайта. Перед любыми изменениями сохраните копию файла: одна ошибка в синтаксисе приводит к ошибке 500 на всём сайте.

### Редирект одной страницы

Простейший вариант — директива Redirect из модуля mod_alias:

```
Redirect 301 /old-page/ https://example.ru/new-page/
```

Если на сайте уже используется mod_rewrite, а в WordPress и 1С-Битрикс это так, надёжнее писать правила через него, чтобы не смешивать два модуля:

```
RewriteEngine On
RewriteRule ^old-page/?$ /new-page/ [R=301,L]
```

### Редирект с HTTP на HTTPS

```
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
```

Если сайт работает за прокси-сервером или балансировщиком, который сам принимает HTTPS, переменная HTTPS может быть всегда выключена, и правило создаст бесконечный цикл. В этом случае проверяют заголовок, который передаёт прокси, например X-Forwarded-Proto, или настраивают редирект на уровне прокси. Уточните схему у хостинга.

### Редирект с www на домен без www

```
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
```

### Слеш в конце адреса

Адреса /catalog и /catalog/ для сервера — разные страницы. Если обе открываются с кодом 200, появляются дубли. Выберите один вариант и перенаправляйте на него. Правило для Apache, которое добавляет слеш к адресам, не являющимся файлами:

```
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ /$1/ [R=301,L]
```

В WordPress формат слеша задаётся структурой постоянных ссылок, и движок сам перенаправляет на правильный вариант. В 1С-Битрикс поведение зависит от настроек компонентов и шаблонов ЧПУ, поэтому правило на сервере проверяют на разных типах страниц: разделах, товарах, фильтрах.

### Порядок правил

Правила выполняются сверху вниз. Размещайте собственные редиректы выше блока CMS: в WordPress — выше строки «# BEGIN WordPress», в 1С-Битрикс — выше правил, которые передают запросы в /bitrix/urlrewrite.php. Иначе CMS перехватит запрос раньше.

## Редирект с домена на домен

Смена домена — самый ответственный сценарий. Ошибка здесь может стоить значительной части поискового трафика.

### Правило для Apache

На старом домене, который продолжает указывать на тот же или другой сервер, размещают правило, переносящее все адреса с сохранением пути:

```
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain\.ru$ [NC]
RewriteRule ^(.*)$ https://new-domain.ru/$1 [R=301,L]
```

Так страница old-domain.ru/catalog/item/ ведёт на new-domain.ru/catalog/item/, а не на главную нового сайта.

### Пошаговый план переезда

1. Подготовьте новый сайт на новом домене и закройте его от индексации до переключения.
2. Составьте таблицу соответствия старых и новых адресов, если структура меняется.
3. Выпустите SSL-сертификаты для обоих доменов: иначе редирект со старого HTTPS-адреса не сработает, браузер покажет ошибку сертификата.
4. Откройте новый сайт для индексации и включите редиректы.
5. Добавьте новый домен в Яндекс Вебмастер и Google Search Console, подтвердите права.
6. В Яндекс Вебмастере воспользуйтесь инструментом переезда сайта, в Search Console — инструментом смены адреса.
7. Обновите ссылки в рекламе, справочниках, соцсетях и карточках организации.
8. Сохраняйте старый домен и редиректы как можно дольше, минимум несколько месяцев, а лучше постоянно.

Подробнее о переезде на другой сервер — в статье [перенос сайта на другой хостинг](https://chugunov.pro/perenos-sajta-na-drugoj-hosting/).

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

На VPS и выделенных серверах часто работает nginx, и .htaccess он не читает. Правила пишутся в конфигурации сервера.

### HTTP на HTTPS и главное зеркало

```
server {
listen 80;
server_name example.ru www.example.ru;
return 301 https://example.ru$request_uri;
}

server {
listen 443 ssl;
server_name www.example.ru;
# здесь директивы ssl_certificate и ssl_certificate_key
return 301 https://example.ru$request_uri;
}
```

Первый блок переводит весь HTTP-трафик на HTTPS-версию без www, второй — HTTPS-запросы с www. Основной блок server для example.ru на порту 443 остаётся без изменений.

### Редирект отдельной страницы

```
location = /old-page/ {
return 301 https://example.ru/new-page/;
}
```

### Массовые редиректы через map

Когда адресов много, удобнее карта соответствий. Блок map размещается на уровне http, а проверка — внутри server:

```
map $uri $new_uri {
default "";
/old-1/ /new-1/;
/old-2/ /new-2/;
}

server {
# остальные директивы
if ($new_uri) {
return 301 $new_uri;
}
}
```

### Применение изменений

После правки конфигурации проверьте синтаксис и перезагрузите nginx:

```
nginx -t
systemctl reload nginx
```

Если nginx -t сообщает об ошибке, не перезагружайте сервер, пока не исправите её. На хостингах с панелью управления правила nginx часто задаются через панель, а прямой доступ к конфигурации есть не у всех тарифов.

## Битрикс редиректы: варианты настройки

В 1С-Битрикс редиректы делают несколькими способами, и выбор зависит от сервера и задачи.

### Через .htaccess

На Apache правила прописывают в .htaccess в корне сайта, выше стандартного блока, который передаёт запросы в /bitrix/urlrewrite.php. Это самый надёжный вариант для HTTPS, зеркала и массовых переносов.

### Через nginx на виртуальной машине Битрикс

Если сайт работает на окружении, где запросы сначала принимает nginx, правила для протокола и зеркала логичнее разместить в его конфигурации. Точное расположение файлов зависит от окружения, поэтому перед правкой найдите конфигурацию нужного сайта и сделайте её копию.

### В коде

Для редиректов, которые зависят от логики, например при удалении товара с переходом в его раздел, используют функцию LocalRedirect с указанием кода:

```
LocalRedirect('/catalog/new-section/', false, '301 Moved permanently');
```

### Модули из Маркетплейса

Для управления редиректами из админки есть модули в Маркетплейсе 1С-Битрикс: список правил, импорт из таблицы, журнал 404. Удобно, когда контент-менеджеры сами переносят страницы. При большом количестве правил серверный вариант работает быстрее.

### Особенность: urlrewrite.php

Файл urlrewrite.php отвечает за обработку ЧПУ, а не за редиректы. Правила в нём сопоставляют адреса с компонентами, но не отправляют код 301. Путать эти механизмы не стоит.

## Редиректы в WordPress

### Встроенные механизмы

WordPress сам перенаправляет со старого адреса записи, если изменить её ярлык после публикации: старый ярлык сохраняется, и посетитель попадает на новый адрес. Для переезда на HTTPS в разделе «Настройки → Общие» меняют адрес WordPress и адрес сайта, но серверный редирект всё равно нужно настроить отдельно.

### Плагины

Для ручного управления используют плагин Redirection или модуль перенаправлений в Rank Math. В них можно создать правило, выбрать код 301, импортировать список адресов и отслеживать ошибки 404, чтобы вовремя добавлять недостающие редиректы.

### Когда лучше сервер

Для HTTPS, зеркала www и смены домена используйте .htaccess или nginx. Плагин срабатывает только после загрузки WordPress, а серверное правило — сразу, до выполнения PHP. Это быстрее и не зависит от работоспособности плагинов.

## Как проверить редирект

После настройки проверьте каждый важный адрес. Ошибки в редиректах незаметны при обычном просмотре сайта, но хорошо видны роботам.

### Проверка через curl

```
curl -I http://example.ru/old-page/
```

В ответе должен быть код 301 и заголовок Location с новым адресом. Чтобы увидеть всю цепочку переходов, добавьте ключ -L:

```
curl -sIL http://example.ru/old-page/
```

### Другие способы

- Инструмент проверки ответа сервера в Яндекс Вебмастере.
- Панель разработчика браузера, вкладка сети с включённым сохранением журнала.
- Онлайн-сервисы проверки кода ответа.
- Краулеры сайта, которые находят цепочки и циклы по всему сайту.

### Что проверять

1. Код ответа — 301, а не 302.
2. Один переход, без цепочек.
3. Конечная страница отвечает кодом 200.
4. Все четыре варианта главной — http, https, с www и без — ведут на одно главное зеркало.
5. Внутренние ссылки сайта ведут сразу на новые адреса, а не через редирект.

### Проверка после переезда всего сайта

Когда меняется домен или структура, проверять адреса по одному бессмысленно. Возьмите полный список старых URL: из прежней карты сайта, из отчётов Вебмастера о страницах в поиске и из аналитики с посещаемыми страницами. Прогоните этот список через краулер или скрипт и отфильтруйте всё, что отвечает не 301 с одним переходом на страницу с кодом 200. Отдельно проверьте адреса с GET-параметрами, страницы пагинации и файлы, на которые могут вести внешние ссылки: PDF-каталоги, прайсы, изображения. Если сайт большой и переезд затрагивает тысячи страниц, такую проверку разумно провести в рамках [технического аудита](https://chugunov.pro/uslugi/audit-sajta/).

## Сценарии из практики

### Переход на HTTPS

Сертификат установлен, сайт открывается по https, но старые http-адреса продолжают отвечать кодом 200. Поисковик видит две копии сайта. Решение — серверное правило 301 с HTTP на HTTPS, обновление адреса сайта в настройках CMS, замена внутренних ссылок и ресурсов на https и проверка, что на страницах не осталось смешанного содержимого.

### Смена структуры каталога

Интернет-магазин переименовал разделы, и адреса товаров изменились. Если не настроить редиректы, товары из выдачи ведут на 404. Порядок действий: выгрузить старые адреса из карты сайта или Вебмастера, сопоставить их с новыми по артикулу или идентификатору, сформировать правила и загрузить их на сервер или в модуль редиректов. Сопоставление по идентификатору надёжнее ручного, когда товаров тысячи.

### Объединение похожих страниц

На сайте три статьи на одну тему, и ни одна не держится в топе. Лучшую статью дополняют материалом из двух других, а их адреса перенаправляют на неё 301 редиректом. Так сигналы собираются на одной странице.

### Удаление товара

Товар снят с производства. Если есть прямая замена, редирект ведёт на неё; если нет — на раздел каталога или карточка остаётся с пометкой «нет в наличии» и ссылками на аналоги. Отправлять все удалённые товары на главную не стоит.

## Редиректы и SEO после изменений

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

### Что делать в первые недели

- Обновить карту сайта: в ней должны быть только новые адреса с кодом 200.
- Проверить канонические адреса на страницах: они не должны указывать на старые URL.
- Заменить внутренние ссылки в меню, текстах и шаблонах на новые адреса.
- Следить за отчётами об ошибках и исключённых страницах в Вебмастере.
- Отправить важные новые страницы на переобход.

Эти шаги входят в базовую техническую оптимизацию, о которой подробно написано в статье [что такое техническое SEO](https://chugunov.pro/chto-takoe-tehnicheskoe-seo/). Временное колебание трафика после крупного переезда возможно, но при правильных редиректах оно обычно восстанавливается.

## Типичные ошибки

- **Все старые страницы на главную.** Посетитель не находит нужное, поисковик считает это «мягкой» 404.
- **Цепочки.** http → https → www → без www → новая страница. Каждый лишний шаг замедляет загрузку и расходует краулинговый бюджет.
- **Циклы.** Правила противоречат друг другу, и браузер показывает ошибку слишком многих перенаправлений.
- **Временный 302 вместо 301.** Старый адрес может надолго остаться в индексе.
- **Редиректы в CMS и на сервере одновременно.** Они конфликтуют и создают цепочки.
- **Удаление редиректов через месяц.** Ссылки на старые адреса живут годами.
- **Отсутствие SSL на старом домене.** Редирект с https-адреса не срабатывает.

### Чек-лист

- Составлена таблица старых и новых адресов.
- Правила размещены выше блока CMS в .htaccess или в конфигурации nginx.
- Все варианты главной ведут на одно зеркало за один переход.
- Коды ответа — 301, конечные страницы отвечают 200.
- Внутренние ссылки, карта сайта и канонические адреса обновлены.
- В Вебмастере и Search Console отражена смена адресов.
- Настроено отслеживание 404 после изменений.

## Частые вопросы

### Что такое 301 редирект простыми словами?

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

### Как сделать редирект одной страницы?

В .htaccess — директивой Redirect 301 или правилом RewriteRule, в nginx — через location с return 301, в WordPress — плагином или модулем Rank Math.

### Как настроить редиректы для всего сайта при смене домена?

Прописать правило на старом домене, которое переносит все адреса с сохранением пути, и сообщить о переезде в Яндекс Вебмастере и Search Console.

### Как сделать редирект с HTTP на HTTPS?

На Apache — правилом с условием RewriteCond %{HTTPS} off, на nginx — отдельным блоком server для порта 80 с return 301.

### Как проверить редирект?

Командой curl -I, инструментом проверки ответа сервера в Яндекс Вебмастере или вкладкой сети в браузере. Для массовой проверки сотен адресов удобнее краулер или скрипт, который пройдёт по списку и сохранит коды ответа и конечные адреса в таблицу.

### Где настраивать редиректы в Битрикс?

В .htaccess или nginx для глобальных правил, функцией LocalRedirect для логики в коде, модулями из Маркетплейса для управления из админки.

### Передаёт ли 301 редирект позиции новой странице?

Поисковые системы со временем переносят сигналы старой страницы на новую, если содержание близкое. Гарантий и сроков никто не даёт, но без редиректа позиции теряются почти наверняка.

### Как долго держать редиректы?

Как можно дольше. Ссылки на старые адреса остаются на других сайтах, в закладках и в рекламе годами. Для смены домена это особенно важно: если отказаться от старого домена и редиректов, все внешние ссылки на него перестанут работать, а освободившийся домен может зарегистрировать кто угодно.

### Почему после редиректа ошибка слишком многих перенаправлений?

Правила противоречат друг другу, например CMS перенаправляет на www, а сервер — обратно. Проверьте все места, где настроены редиректы, и оставьте одно.

### Влияет ли редирект на скорость сайта?

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

### Можно ли настроить редирект без доступа к серверу?

Да, средствами CMS: плагином в WordPress или модулем в 1С-Битрикс. Для отдельных страниц этого достаточно. Для HTTPS и смены домена доступ к .htaccess, конфигурации nginx или панели хостинга всё же понадобится.

### Чем 301 отличается от 302?

301 — постоянное перемещение, 302 — временное. Для смены адресов нужен 301. Временный 302 уместен, когда страница действительно вернётся на прежний адрес: например, раздел закрыт на время технических работ или акция временно перенаправляет на посадочную страницу.

## Итог

301 редирект сохраняет трафик и позиции при смене протокола, домена или структуры сайта. Главное правило — каждый старый адрес одним переходом ведёт на близкую по смыслу новую страницу, без цепочек и циклов.

Глобальные правила настраивайте на сервере через .htaccess или nginx, точечные — средствами CMS. После любых изменений проверяйте коды ответа и следите за ошибками 404 в Вебмастере.

Если вы переносите сайт, меняете домен или структуру адресов, я как частный разработчик на WordPress и 1С-Битрикс составлю карту редиректов, настрою их на сервере и проверю, чтобы сайт не потерял позиции. Работаю напрямую, без посредников — подробности на странице [переноса сайта](https://chugunov.pro/uslugi/perenos-sajta/).

- 19.08.2026

## Связанное на сайте

- Услуга [Перенос сайта на Битрикс](https://chugunov.pro/uslugi/perenos-sajta-na-bitriks/)
- Справочник API [Справочник API 1С-Битрикс](https://chugunov.pro/api-bitrix/)
- Глоссарий [Глоссарий: 1С-Битрикс](https://chugunov.pro/glossary/bitrix/)

Автор статьи [Чугунов Алексей](https://chugunov.pro/about/) Fullstack-разработчик: 1С-Битрикс, WordPress, PHP
[Обо мне](https://chugunov.pro/about/)

Рубрики блога

- [Продажи](https://chugunov.pro/category/sales/) 16
- [Продвижение](https://chugunov.pro/category/prodvizhenie/) 22
- [Создание сайтов](https://chugunov.pro/category/sozdanie-sajtov/) 75
- [Интересное](https://chugunov.pro/category/interesnoe/) 13

Остались вопросы?

Отправьте сообщение, и я свяжусь с вами в ближайшее время

Или звоните, сразу обсудим детали.

[+7 (915) 016-99-88](tel:79150169988)
