Я пропускаю флаг или что-то?Нужен совет RewriteRule - PullRequest
0 голосов
/ 13 июня 2010
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ index.php?p=$1&l=$2
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/$ index.php?p=$1&l=$2

это работает нормально, если я делаю site.com/param_one/param_two/, но возвращает 404, когда я опускаю param_two.Я новичок в маршрутизации запросов с помощью htaccess, есть ли простое быстрое решение?

1 Ответ

2 голосов
/ 13 июня 2010

Квантор + означает одно или несколько повторений .Но /param_one/ потребует ноль или более повторений .Поэтому попробуйте квантификатор *, чтобы иметь ноль или более повторений:

RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]*)$ index.php?p=$1&l=$2
...