Случайно для себя обнаружил интересную особенность ЧПУ.
Допустим, есть каталог на сайте с адресами вида:
httр://www.example.ru/catalog/section_code/element_id/
Так вот, если element_id существует, то section_code может быть абсолютно любым. То есть все ссылки
httр://www.example.ru/catalog/tovarcheg/element_id/
httр://www.example.ru/catalog/немного_мата/element_id/
httр://www.example.ru/catalog/что-то_обидное/element_id/
httр://www.example.ru/catalog/[пиши_что_хочешь]/element_id/
будут вести на одну и ту же страницу, но никак не на 404. Проверял на многих сайтах на платформе Битрикс в Интернет - для всех можно делать "весёлые" адреса.
Для своих проектов обкатываю решение, основанное на проверке существования символьного кода раздела при включенной опции "Устанавливать статус 404, если не найдены элемент или раздел:" и саму опцию переименовываю в "Устанавливать статус 404, если не найдены раздел или элемент:", соответственно.
Это баг или фича?
Допустим, есть каталог на сайте с адресами вида:
httр://www.example.ru/catalog/section_code/element_id/
Так вот, если element_id существует, то section_code может быть абсолютно любым. То есть все ссылки
httр://www.example.ru/catalog/tovarcheg/element_id/
httр://www.example.ru/catalog/немного_мата/element_id/
httр://www.example.ru/catalog/что-то_обидное/element_id/
httр://www.example.ru/catalog/[пиши_что_хочешь]/element_id/
будут вести на одну и ту же страницу, но никак не на 404. Проверял на многих сайтах на платформе Битрикс в Интернет - для всех можно делать "весёлые" адреса.
Для своих проектов обкатываю решение, основанное на проверке существования символьного кода раздела при включенной опции "Устанавливать статус 404, если не найдены элемент или раздел:" и саму опцию переименовываю в "Устанавливать статус 404, если не найдены раздел или элемент:", соответственно.
Это баг или фича?