301-редирект сообщает поисковым системам, что страница навсегда переехала на новый адрес, передавая новому URL накопленный вес и историю индексации. В 1С-Битрикс редиректы удобно вести централизованно через модуль поисковой оптимизации, не трогая код и .htaccess.
seo.Когда нужен 301, а когда 302
Перед настройкой важно выбрать правильный тип перенаправления, иначе можно навредить индексации.
- 301 (Moved Permanently) — страница переехала навсегда. Поисковик исключает старый URL из индекса и передаёт вес новому адресу. Используйте при смене ЧПУ, объединении дублей, переезде на HTTPS или новый домен.
- 302 (Found) / 307 — временное перенаправление. Старый URL остаётся в индексе, вес не передаётся. Подходит для акций, A/B-тестов, временно закрытых разделов.
Для SEO-переездов в подавляющем большинстве случаев нужен именно 301. Ошибочное использование 302 вместо 301 — одна из частых причин, по которой новый URL долго не заменяет старый в выдаче.
Где находится управление переадресацией
Инструмент входит в состав модуля поисковой оптимизации (seo). Если пункта меню нет, установите модуль в разделе Marketplace → Установленные решения или через Настройки → Настройки продукта → Модули.
Путь к списку редиректов:
- Откройте административную часть сайта (
/bitrix/admin/). - Перейдите в Маркетинг → Поисковая оптимизация → Управление переадресацией.
- Вы увидите таблицу существующих правил с колонками «Условие» (исходный URL), «Переадресация» (куда) и «Активность».
Правила хранятся в таблице b_seo_redirect и применяются на прологе через компонент отслеживания 404 и обработчик модуля SEO, поэтому работают на всех страницах сайта.
Создание одиночного 301-редиректа
Чтобы добавить перенаправление вручную:
- На странице «Управление переадресацией» нажмите Добавить переадресацию.
- В поле «Путь» (условие) укажите старый относительный URL, например
/catalog/old-section/. - В поле «Куда переадресовывать» впишите новый адрес — относительный (
/catalog/new-section/) или абсолютный. - Установите тип 301 (постоянное). Флажок «Использовать точное совпадение» включите, если правило должно срабатывать только на этот URL, а не на все вложенные.
- Поставьте «Активность» — Да и сохраните.
Проверьте результат: откройте старый URL и убедитесь, что браузер отдаёт код 301 и открывает новую страницу. Удобно смотреть заголовки ответа во вкладке Network инструментов разработчика или через curl -I.
Массовая загрузка редиректов при переезде
При смене структуры каталога или переезде домена правил могут быть сотни. Заводить их по одному нецелесообразно.
- Импорт списком. Многие редакции позволяют загрузить пары «старый URL → новый URL» из CSV. Заранее подготовьте выгрузку старых адресов (например, из sitemap.xml или логов) и сопоставьте им новые.
- Программное добавление. Через API модуля можно вставлять правила пакетно из PHP-скрипта, обращаясь к таблице
b_seo_redirectсредствами ORM.
Ниже — минимальный пример добавления правила из кода:
\Bitrix\Seo\Redirect\RedirectTable::add(['URL_FROM' => '/old/', 'URL_TO' => '/new/', 'IS_ACTIVE' => 'Y', 'STATUS_CODE' => '301']);
Перед массовой заливкой обязательно проверьте таблицу на дубли и на цепочки (когда цель одного редиректа сама является источником другого).
301 против дублей и вариантов URL
301-редиректы — рабочий способ склеить технические дубли, когда canonical по каким-то причинам недостаточно.
| Проблема | Правило редиректа |
|---|---|
| Дубли со слешем и без | Привести все к одному варианту, например добавлять конечный / |
| Верхний регистр в URL | Редирект на строчный вариант адреса |
| index.php в адресе | /index.php → / |
| www и без www, http и https | Настраивается на уровне веб-сервера, а не модуля SEO |
Учтите: нормализацию слеша, регистра и www/https правильнее решать на уровне веб-сервера (Nginx/Apache) — это быстрее и надёжнее, чем сотни точечных правил в модуле. Модуль SEO берите для адресных редиректов конкретных страниц и разделов.
Частые ошибки
Ошибки при настройке 301 напрямую бьют по индексации, поэтому проверяйте каждое правило.
- Цепочки редиректов. A → B → C заставляют поисковик проходить несколько переходов и размывают вес. Всегда ведите старый URL сразу на финальный.
- Циклы. A → B и одновременно B → A дают бесконечное перенаправление и ошибку в браузере.
- 301 вместо 302. Постоянный редирект на временно закрытой странице выкинет её из индекса — восстановить будет сложно.
- Редирект на 404. Перенаправление на несуществующий адрес хуже, чем его отсутствие.
- Забытый флаг активности. Правило создано, но переключатель «Активность» стоит в «Нет» — редирект не работает.
- Кэш. После изменения правил очистите кэш сайта (Настройки → Настройки продукта → Автокэширование), иначе старое поведение может сохраниться.
Проверка и контроль после настройки
Настроенные редиректы нужно проверить и передать поисковым системам.
- Проверьте код ответа каждого важного URL: должно быть ровно
301и один переход без цепочки. - Обновите sitemap.xml — в карте должны остаться только актуальные (конечные) адреса.
- В Яндекс Вебмастере и Google Search Console отслеживайте, как старые URL уходят из индекса, а новые появляются.
- Пройдитесь краулером (например, встроенным инструментом проверки индексации или сторонним) по старым адресам и убедитесь, что нет битых ссылок и цепочек.
Полная переиндексация после массового переезда обычно занимает от нескольких недель до пары месяцев — это нормально.
Итог
301-редиректы в 1С-Битрикс ведутся централизованно в Маркетинг → Поисковая оптимизация → Управление переадресацией без правки .htaccess. Для SEO-переездов используйте только код 301, для временных случаев — 302.
- Заводите редиректы сразу на финальный URL, избегая цепочек и циклов.
- Массовые правила загружайте импортом или через API, предварительно проверяя дубли.
- Нормализацию www/https/слеша делайте на веб-сервере, точечные адреса — в модуле SEO.
- После настройки очистите кэш, обновите sitemap и проследите за переиндексацией.
Аккуратно настроенные 301 сохраняют накопленный вес страниц и делают переезд практически незаметным для поисковых систем.