Разработка

Ошибка Битрикс "Page Not Found" при переходе в раздел

Ошибка Битрикс "Page Not Found" при переходе в раздел

Здравствуйте! Проанализировав код вашего компонента и типичные проблемы с ЧПУ (человеко-понятные URL) в Битрикс, я пришел к выводу, что ошибка “Page Not Found” при переходе в раздел каталога, скорее всего, связана с настройками инфоблока или правил обработки URL, а не с самим вызовом компонента.

Вот наиболее вероятные причины и шаги для их устранения:

Основная причина: Отсутствие символьных кодов у разделов

В настройках вашего компонента указан шаблон путей для разделов: `"#SECTION_CODE_PATH#/"`. Это означает, что URL для каждого раздела должен строиться на основе его "символьного кода". Если у разделов инфоблока №12 эти коды не заданы, Битрикс не может сформировать корректную ссылку, что и приводит к ошибке 404.


**Как это исправить:**


- Перейдите в административную панель вашего сайта.

- Откройте раздел **Контент → Инфоблоки → Типы инфоблоков → aspro_scorp_catalog** (или тот тип, который у вас используется).

- Найдите инфоблок с ID **12** и перейдите к списку его разделов.

- Проверьте каждый раздел каталога. Убедитесь, что у каждого из них заполнено поле **"Символьный код"**.


	<li>Если поле пустое, задайте ему уникальное значение латинскими буквами, например, `dlya-doma`, `stroitelnye-materialy`.

	- Битрикс может автоматически генерировать этот код из названия раздела, если включена соответствующая настройка в инфоблоке.

Вторая возможная причина: Некорректные правила в файле urlrewrite.php

Для корректной работы ЧПУ в Битрикс необходимы правила перезаписи URL. Возможно, для вашего каталога правило отсутствует или настроено неправильно.


**Как это проверить и исправить:**


- Перейдите в **Настройки → Настройки продукта → Обработка адресов → Правила обработки URL**.

- В списке правил найдите правило, относящееся к вашему каталогу. Оно должно выглядеть примерно так:


	<li>**Условие:** `#^/catalog/#`

	- **Компонент:** `bitrix:news`

	- **Файл:** `/catalog/index.php`

	- **ID правила:** (может быть пустым или содержать ID вашего компонента)
- Если такого правила нет, его необходимо создать. Если оно есть, убедитесь, что путь в поле "Файл" (`/catalog/index.php`) верный и соответствует тому файлу, где расположен вызов компонента.

Третья возможная причина: Настройки веб-сервера

Хотя это менее вероятно, если другие ЧПУ на сайте работают, проблема может быть в конфигурации веб-сервера (Apache или Nginx). Убедитесь, что в корневой папке сайта есть файл `.htaccess` (для Apache) со стандартными правилами Битрикс, которые перенаправляют все запросы на `bitrix/urlrewrite.php`.

Дополнительный совет: Очистка кеша

После внесения любых изменений (особенно в символьные коды или настройки компонента), обязательно сбросьте кеш.


- Перейдите в **Настройки → Настройки продукта → Автокеширование**.

- На вкладке "Очистка файлов кеша" выберите "Все" и нажмите "Начать".


**Резюмируя, ваш план действий должен быть таким:**


- **Проверить и заполнить символьные коды** у всех разделов инфоблока №12. Это самая частая причина подобных ошибок.

- Проверить наличие и корректность **правила обработки URL** для `/catalog/`.

- **Очистить кеш** сайта.


С большой долей вероятности, выполнение первого пункта решит вашу проблему.