До 10%Рекомендуйте нас и получайте процент за каждого приведённого клиента

Настройка ЧПУ в 1С-Битрикс

Настройка ЧПУ в 1С-Битрикс: SEF-режим, маршрутизация, ЧПУ инфоблоков и умного фильтра, редиректы

Адрес вида /index.php?SECTION_ID=42&ELEMENT_ID=1567 не понимает ни человек, ни поисковик. А /catalog/smesiteli/smesitel-dlya-kuhni-grohe/ читается с одного взгляда: видно раздел, видно товар, в URL есть ключевые слова. Разница между этими адресами — это настройка ЧПУ, и в 1С-Битрикс она делается штатными средствами, если знать порядок действий.

Это практическое руководство по настройке ЧПУ (человекопонятных URL) в 1С-Битрикс: как включить SEF-режим, что должно быть на сервере, как настроить пути для инфоблоков и умного фильтра, как перевести старые адреса и не потерять трафик. Если сайт большой и адреса исторически «кривые», настройку ЧПУ стоит совмещать с аудитом и оптимизацией 1С-Битрикс, чтобы заодно закрыть дубли и редиректы.

Коротко

  • ЧПУ в Битрикс — это режим SEF: читаемый путь подменяет технические параметры.
  • Нужны две части: настройка SEF в компоненте и серверное правило rewrite, иначе будет 404.
  • Символьные коды разделов и элементов генерируются транслитерацией и не должны меняться после индексации.
  • Со всех старых адресов ставят 301-редиректы на новые ЧПУ, иначе трафик просядет.

Что такое ЧПУ и зачем оно

ЧПУ — человекопонятный (или человекочитаемый) URL. Вместо технического адреса с параметрами пользователь и поисковик видят осмысленный путь, отражающий структуру сайта. Это не косметика, а фактор и удобства, и продвижения.

Как ЧПУ устроено в Битрикс

В 1С-Битрикс за ЧПУ отвечает режим SEF (Search Engine Friendly). Идея простая: пользователь запрашивает читаемый путь, а система на лету превращает его во внутренние параметры и отдаёт нужную страницу. Есть два основных механизма реализации.

Первый — SEF внутри комплексного компонента. Каталог, новости и другие «комплексные» компоненты сами умеют разбирать читаемый путь по своим шаблонам, поэтому для типового каталога достаточно включить SEF и задать пути. Второй — собственная маршрутизация через файл urlrewrite.php, когда нужно связать произвольный адрес с конкретным скриптом. Для большинства задач хватает первого механизма.

Обмен данными сайта с 1С Сайткаталог, заказы1Стовары, заказыОбменочередь / APIДанные идут в обе стороны по расписанию или по событию
Схема: сайт и 1С обмениваются данными в обе стороны — по расписанию или по событию. Товары и остатки приходят на сайт, заказы уходят обратно.

Серверная часть: rewrite и модуль

Самая частая причина, почему «включил ЧПУ, а всё сломалось», — забытая серверная часть. Чтобы SEF работал, веб-сервер должен направлять несуществующие физические пути в обработчик Битрикса. Без этого правила читаемые адреса отдают 404.

Проверьте окружение первым делом: в стандартном окружении BitrixVM правило rewrite уже настроено. Если сайт живёт на нетиповом хостинге, серверную часть ЧПУ настраивают вручную. Про настройку окружения — в статье о хостинге и BitrixVM.

Включаем SEF в комплексном компоненте

Основная настройка ЧПУ каталога живёт в параметрах комплексного компонента. Порядок действий в общем виде такой:

  1. Откройте настройки компонента каталога. В режиме редактирования страницы каталога перейдите к параметрам комплексного компонента.
  2. Включите поддержку ЧПУ (SEF). Отметьте соответствующий флаг режима SEF.
  3. Задайте корневой путь. Например, /catalog/ — от него строятся все внутренние адреса.
  4. Проверьте шаблоны путей. Компонент подставит пути по умолчанию для разделов, элементов и служебных страниц — при необходимости их правят.
  5. Сохраните и проверьте. Откройте раздел и товар — адреса должны стать читаемыми, а страницы отдавать 200.

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

Шаблоны путей для разделов и элементов

Шаблоны путей определяют, как именно строится адрес каждого типа страницы. В настройках компонента для каждого «представления» (раздел, элемент, фильтр) задан свой шаблон с подстановкой символьного кода.

СтраницаШаблон путиПример адреса
Раздел#SECTION_CODE_PATH#//catalog/smesiteli/
Элемент#SECTION_CODE_PATH#/#ELEMENT_CODE#//catalog/smesiteli/grohe-32843/
Фильтр#SECTION_CODE_PATH#/filter/#SMART_FILTER_PATH#/apply//catalog/smesiteli/filter/color-black/apply/
Сравнениеcompare//catalog/compare/

Ключевой момент — использовать полный путь разделов (SECTION_CODE_PATH), чтобы адрес отражал вложенность категорий. Тогда URL совпадает со структурой каталога и хлебными крошками, что хорошо и для пользователя, и для поисковика.

Транслитерация и символьные коды

Читаемая часть адреса берётся из символьного кода раздела и элемента. Чтобы не проставлять коды вручную, в настройках инфоблока включают их автогенерацию транслитерацией из названия: «Смесители для кухни» превращается в smesiteli-dlya-kuhni.

Что важно настроить:

Особенно осторожно с массовым обновлением каталога из 1С: если при обмене символьные коды перегенерируются, адреса «поплывут», и придётся ставить редиректы. Стабильность кодов при обмене — часть настройки автоматизации на 1С.

ЧПУ для умного фильтра

Отдельная ценность ЧПУ — читаемые адреса страниц умного фильтра. Они превращают фильтрацию в источник поискового трафика: запрос «чёрные смесители для кухни» ведёт на отфильтрованную выборку с собственным URL и метатегами.

Настройка сводится к нескольким шагам:

  1. Задайте шаблон пути фильтра. В настройках каталога — путь вида .../filter/#SMART_FILTER_PATH#/apply/.
  2. Определите ценные связки. Комбинации «свойство + значение», по которым есть спрос.
  3. Настройте SEO-свойства. Для ценных страниц — свои title, h1, description с подстановкой значений.
  4. Закройте мусор. Многофакторные и редкие комбинации уведите из индексации.

Умный фильтр опирается на фасетный индекс, поэтому ЧПУ-страницы фильтра работают быстро. Подробно проектирование фильтра мы разбирали отдельно — почитайте, как работа с D7 и ORM помогает делать нестандартную логику генерации адресов там, где штатных настроек не хватает.

urlrewrite.php для нестандартных страниц

Когда нужен произвольный ЧПУ, не привязанный к комплексному компоненту, используют собственную маршрутизацию через urlrewrite.php. Это файл правил в корне сайта, который связывает шаблон адреса с конкретным скриптом или компонентом.

Типичные случаи:

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

Редиректы со старых адресов

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

  1. Соберите карту адресов. Выгрузите старые URL из индекса, аналитики и логов сервера.
  2. Сопоставьте старое с новым. Для каждого старого адреса определите новый ЧПУ.
  3. Настройте 301-редиректы. Постоянные перенаправления, чтобы вес страниц перешёл на новые адреса.
  4. Проверьте цепочки. Не должно быть цепочек редиректов и петель — только один переход.
Только 301, не 302: при смене адресов навсегда используют постоянный редирект (301). Временный (302) не передаёт вес и оставляет старые адреса в индексе, что тормозит переиндексацию.

Дубли, слеши и канонические адреса

ЧПУ помогает избежать дублей, но при неаккуратной настройке может их же и породить. Типичные источники дублей — разное написание одного адреса.

Для страниц с параметрами прописывают канонический адрес (rel="canonical"), указывающий на основную версию. Это отделяет «пользовательские» URL (сортировка, страницы) от индексируемого канона и предотвращает разбавление веса.

Проверка и отладка ЧПУ

После настройки ЧПУ обязательно проверяют на реальных данных. Беглый обход «одной страницы» часто пропускает проблемы, которые всплывают на подразделах и фильтре.

Массовую проверку кодов ответа удобно автоматизировать и включить в процесс выката, чтобы регрессии по URL ловились до попадания на прод — про это в материале о CI/CD и деплое в 1С-Битрикс.

Частые ошибки

Чек-лист настройки

  1. Серверная часть готова. Модуль ЧПУ активен, правило rewrite направляет пути в обработчик.
  2. SEF включён. В компоненте каталога заданы корневой путь и шаблоны для разделов, элементов, фильтра.
  3. Транслитерация настроена. Символьные коды генерируются автоматически и уникальны.
  4. Коды стабильны при обмене. Обмен с 1С не перегенерирует символьные коды товаров.
  5. Фильтр в SEF. Ценные связки открыты с метатегами, мусорные закрыты.
  6. Редиректы настроены. Все старые адреса — 301 на новые, без цепочек и петель.
  7. Дубли закрыты. Слеши, регистр, параметры и canonical приведены в порядок.
  8. Проверено и в sitemap. Коды ответов проверены, карта сайта содержит только новые ЧПУ.

Вывод

Настройка ЧПУ в 1С-Битрикс — это не один флажок, а связка из двух частей: SEF в компоненте и правило rewrite на сервере. Добавьте к ним корректную транслитерацию символьных кодов, ЧПУ для умного фильтра и продуманную структуру путей — и адреса станут читаемыми и для людей, и для поисковика.

Самое важное при переходе — не потерять накопленный трафик: соберите карту старых адресов, поставьте 301-редиректы, закройте дубли по слешам, регистру и параметрам. Тогда ЧПУ не только улучшит вид адресов, но и укрепит индексацию и позиции сайта. Если каталог большой и исторически запутанный, разумно совместить настройку ЧПУ с аудитом и разом закрыть весь технический долг по URL.

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

Что такое ЧПУ и зачем оно нужно в 1С-Битрикс?

ЧПУ (человекопонятный URL) — это адрес вида /catalog/smesiteli/ вместо /index.php?SECTION_ID=42. В 1С-Битрикс за него отвечает режим SEF: система подменяет технические параметры читаемым путём. ЧПУ важны и для пользователя (по адресу понятно, где он), и для SEO — ключевые слова в URL помогают релевантности, а стабильные адреса лучше индексируются и не плодят дублей.

Как включить ЧПУ для каталога на инфоблоках?

В настройках комплексного компонента каталога включают поддержку ЧПУ (SEF), задают корневой каталог (например, /catalog/) и шаблоны путей для разделов, элементов и дополнительных страниц. Одновременно на сервере должен работать модуль ЧПУ и правило в .htaccess (или конфиге Nginx), которое направляет несуществующие физические пути в обработчик Битрикса. Без серверной части ЧПУ отдаёт 404.

Чем ЧПУ комплексного компонента отличается от правил в urlrewrite.php?

Комплексный компонент (например, каталог) сам разбирает SEF-путь по своим внутренним шаблонам — вам не нужно вручную описывать каждый URL. Файл urlrewrite.php нужен, когда вы делаете собственную маршрутизацию: связываете произвольный ЧПУ-путь с конкретным скриптом или компонентом. Для типового каталога хватает настроек компонента, а urlrewrite используют для нестандартных страниц.

Как настроить ЧПУ для страниц умного фильтра?

Умный фильтр в SEF-режиме генерирует ЧПУ-адреса для комбинаций значений — например, /catalog/smesiteli/filter/color-black/apply/. Путь фильтра задаётся в настройках компонента каталога отдельным шаблоном. Ценные для спроса связки открывают с уникальными метатегами через SEO-свойства фильтра, а мусорные комбинации закрывают от индексации, чтобы не плодить тонкие дубли.

Что делать со старыми адресами при переходе на ЧПУ?

Каждый старый URL, который был в индексе или на который есть ссылки, нужно перенаправить на новый ЧПУ 301-редиректом. Иначе поисковик увидит массовые 404, потеряет накопленный вес страниц и просядет трафик. Составляют карту соответствия «старый адрес → новый» и настраивают редиректы; после — проверяют, что нет цепочек и петель перенаправлений.

Почему после включения ЧПУ страницы отдают 404?

Почти всегда причина в серверной части: не подключён модуль ЧПУ или отсутствует правило rewrite, которое направляет несуществующие пути в bitrix/urlrewrite.php. Также бывает, что в настройках компонента указан неверный корневой путь ЧПУ или не совпадает физическое расположение папки. Проверяют .htaccess/конфиг Nginx, права на файлы и настройки SEF компонента.

Как транслитерация влияет на ЧПУ и нужно ли её настраивать?

Символьные коды разделов и элементов формируют часть ЧПУ, и их удобно генерировать транслитерацией из названия («Смесители» → smesiteli). В настройках инфоблока включают автогенерацию символьного кода при добавлении и правила транслитерации. Важно, чтобы коды были уникальными и не менялись после индексации: смена символьного кода меняет URL и требует редиректа.

Поделиться:

Нужно перевести сайт на ЧПУ без потери трафика?

Настроим SEF и маршрутизацию, ЧПУ для каталога и фильтра, поставим 301-редиректы со старых адресов и уберём дубли. Рассчитаем работу по вашему сайту.

Аудит и оптимизация 1С

Редакция B2Bsite

Команда B2Bsite. С 2014 года разрабатываем и продвигаем сайты на 1С-Битрикс: настройка ЧПУ, SEF, маршрутизация, редиректы и техническое SEO для каталогов и порталов.

← Все статьи блога