Обработка адресов

Урок 94 из 258
Автор: Роберт Басыров
Сложность урока:
1 уровень - интуитивно все понятно из интерфейса, но почитать стоит.
1 из 5
Просмотров: 31072
Дата изменения: 27.11.2024
Недоступно в лицензиях:
Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы (Marketplace > Обновление платформы).
Ограничений нет

Обработка адресов применяется для того, чтобы скрипт мог отвечать не только по своему физическому, но и по любому другому указанному адресу.

  Видеоурок

  Правила обработки адресов

Правила обработки адресов настраиваются отдельно для каждого сайта и каждое из них должно содержать уникальное в рамках сайта условие выполнения. К примеру, у вас есть скрипт, лежащий в файле /catalog/index.php и отвечающий по адресу с параметром id: https://mysite.ru/catalog/index.php?id=15. C помощью правил обработки адресов, можно сделать так, чтобы он отвечал ещё и по адресу: https://mysite.ru/catalog/15.php.

Управление правилами обработки адресов производится в административном разделе на странице Настройки > Настройки продукта > Обработка адресов > Правила обработки. Здесь вы найдете список всех правил, сможете создать новое или отредактировать существующее:

Нажмите на рисунок, чтобы увеличить

При необходимости работать с ними можно и вручную в файле urlrewrite.php в корневой папке сайта.

Важно понимать, что дополнительный адрес, по которому будет отвечать скрипт, не должен физически существовать на сервере. Если такой адрес (файл) существует, то в приоритете будет вызов скрипта по нему. Переадресация в таком случае не сработает.

Зачем это нужно? Так вы можете сократить длину ссылки или открывать подходящий материал сайта для старой страницы, которую вы уже удалили, но уверены, что где-то остались ссылки на неё. А ещё правила обработки адресов работают при настройке ЧПУ в компонентах.

  Форма создания

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

  • Условие – условие, по которому будет работать правило обработки адресов. Задаётся с помощью регулярного выражения. Простыми словами, это тот самый несуществующий адрес, по которому будет открываться указанный ниже файл;
  • Компонент – полное имя компонента (пространство_имен:имя_компонента), для которого будет работать правило. Это поле заполняется автоматически, при настройке ЧПУ в компонентах;
  • Файл – полный путь к странице (файлу), которая должна быть показана;
  • Правило – правило вызова страницы, путь к которой указан в поле выше. В большинстве случае здесь вы будете прописывать параметры, с которыми будет вызвана страница. На скриншоте выше это SECTION_ID и ELEMENT_ID.
Важно: для создания даже простых правил необходимо изучить основы PCRE (Perl-совместимые регулярные выражения) и ознакомиться с различными примерами разбора url-адресов с помощью масок. Регулярные выражения – это не функционал продуктов Битрикс, а общепринятый язык для поиска и осуществления манипуляций с подстроками в тексте, основанный на использовании метасимволов.

Описание простого регулярного выражения со скриншота

  Человеко-понятные адреса

Механизм переопределения адресов задействован и для поддержки ЧПУ ЧПУ (англ. Friendly URL) – веб-адреса, удобные для восприятия человеком (а также систем и методов построения таких адресов). Является аббревиатурой от словосочетания «человеко-понятный урл» (где «урл» – жаргонное обозначение URL).
Подробнее...
(человеко-понятных URL). Эта функция встроена во все комплексные компоненты Компонент – это программный код, оформленный в визуальную оболочку, выполняющий определённую функцию какого-либо модуля по выводу данных в Публичной части. Мы можем вставлять этот блок кода на страницы сайта без непосредственного написания кода. Подробнее... и некоторые простые. Таким образом её можно использовать для переопределения любых URL, как обычных со статической информацией, так и связанных с компонентами (динамической информацией).

При добавлении на страницу компонента с поддержкой ЧПУ (если файл сохраняется с помощью API Для хранения идентификаторов элементов/разделов информационных блоков удобнее всего использовать поле Символьный код.

Подробнее...
) автоматически создается правило переопределения адреса, в котором заполнено поле Компонент. Нужно учитывать, что если страница создаётся не стандартными способами системы, а записывается на сервер (например, через SFTP), то необходимо выполнить пересоздание правил на странице со списком.



Нам жаль это слышать… Но мы постараемся быть лучше!

Мы благодарны Вам за помощь в улучшении документации.

Спасибо, мы рады что смогли помочь Вам. Ниже Вы можете оставить свой отзыв или пожелание :)
Мы стараемся сделать документацию понятнее и доступнее,
и Ваше мнение важно для нас
Курсы разработаны в компании «1С-Битрикс»