@Deemc
веб-программист

Не срабатывает детальная страница, ошибка 404, urlrewrite при многосайтовости, в чем может быть проблема?

Добрый день, впервые столкнулся с многосайтовостью. Имеем английскую версию в папке /en/. Страница списка товаров(news.list) работает корректно, путь сайт/en/products-list/.
Разделы тоже работают(bitrix:catalog.section).
Но при переходе на детальную страницу выдает ошибку 404. В news.list и news.detail идентификатор инфоблока соответствует. Грешу на неверную запись правила в urlrewrite.
2 => 
  array (
    'CONDITION' => '#^(/?[a-zA-Z]{0,2})/products/([a-zA-Z_0-9-]+)/([a-zA-Z_0-9-]+)/($|\\?.*)#',
    'RULE' => 'LANG=$1&SECTION_CODE=$2&ELEMENT_CODE=$3',
    'ID' => '',
    'PATH' => '/products/detail.php',
    'SORT' => 100,
  ),
  8 => 
  array (
    'CONDITION' => '#^(/?[a-zA-Z]{0,2})/en/products-list/([a-zA-Z_0-9-]+)/([a-zA-Z_0-9-]+)/($|\\?.*)#',
    'RULE' => 'LANG=$2&SECTION_CODE=$2&ELEMENT_CODE=$3',
    'ID' => '',
    'PATH' => '/en/products-list/detail.php',
    'SORT' => 100,
  ),


Правило 2 для обычной версии, работает корректно, 8 правило не работает, подскажите, пожалуйста, куда копать?
  • Вопрос задан
  • 867 просмотров
Решения вопроса 1
@anton99zel Куратор тега 1С-Битрикс
29а класс средней школы №7
Добавьте в 404.php
<? print_r($_REQUEST);?>
и смотрите наличие переменных
Дмитрий,
Примерно так, не уверен
1 => 
  array (
    'CONDITION' => '#^/en/products-list/(.+?)/(.+?)/\\??(.*)#',
    'RULE' => 'SECTION_CODE=$1&ELEMENT_CODE=$2,
    'ID' => '',
    'PATH' => '/en/products-list/detail.php',
    'SORT' => 100,
  ),

Ну, и смотреть что ожидает detail...
Примерно это должно быть:
"ELEMENT_CODE" => $_REQUEST["ELEMENT_CODE"]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы