Например такое правило:
Код |
---|
2 =>
array (
'CONDITION' => '#^/courses/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)/([0-3][0-9]\.[0-1][0-9]\.20[1-3][0-9])/([\\?\\#].*)?#',
'RULE' => 'CENTER=$1&COURSE=$2&DATE=$3',
'ID' => '',
'PATH' => '/courses/detail.php',
'SORT' => 100,
),
|
Не могу понять как под него попадает такой URL:
/courses/uchebnyy_tsentr/my_course/14.06.2018/stdhstrhПричем разбирается вот в такой реквест:
Код |
---|
Array(
[CENTER] => uchebnyy_tsentr
[COURSE] => my_course
[DATE] => 14.06.2018stdhstrh
) |
С каких пор под маску
([0-3][0-9]\.[0-1][0-9]\.20[1-3][0-9]) подпадает "
14.06.2018/stdhstrh" ?
Причем если это правило удалить все становится еще хуже:
Код |
---|
Array(
[CENTER] => uchebnyy_tsentr
[COURSE] => my_course/stdhstrh
) |
Это сработало следующие правило:
Код |
---|
'CONDITION' => '#^/courses/([0-9a-zA-Z_-]+)/([0-9a-zA-Z_-]+)/([^/]*)#',
'RULE' => 'CENTER=$1&COURSE=$2',
'ID' => '',
'PATH' => '/courses/detail.php',
'SORT' => 100,
|
Как такое вообще может быть? Почему регулярки жадно стали жрать слэши? Куда в последнем случае делась дата из url.
Почему эта строка - "
my_course/14.06.2018/stdhstrh" попала под регулярку
([0-9a-zA-Z_-]+) и при этом превратилась в "
my_course/stdhstrh"?
Что происходит с моим urlrewrite?