Я пытаюсь переписать URL с:
http://domain.com/aa/whatever/whatever.php
до
http://domain.com/whatever/whatever.php?language=aa
Однако, в зависимости от существующих переменных $ _GET, это может быть либо? Language, либо & language.
Для этого я использую 2 регулярных выражения с флагом [L]:
RewriteRule ^([a-z]{2})/(.*\.php\?.*) /$2&language=$1 [L]
RewriteRule ^([a-z]{2})/(.*) /$2?language=$1 [L]
Второй работает, как и ожидалось ... Первый, однако, никогда не попадает (он попадает ко второму регулярному выражению, которое поражает), хотя тренер по регулярным выражениям действительно показывает мне, что должен.
редактирование:
Если вы только что прочитали, мне нужно использовать две обратные косые черты, чтобы избежать знака вопроса. Если я сделаю это, он попадет в первое регулярное выражение, но никогда не найдет другие переменные GET.