Apache mod_rewrite: путь заменен строкой запроса

У меня есть следующее правило:

RewriteRule ^/([0-9]+)/([a-z0-9_-]*)\.([a-z]+)$ index.php?id=$2&type=$3&size=$1 [R=301,L]

Проблема в том, что когда я иду на URL /0/azerty.ext в браузере URL отображается как /index.php?id=azerty&type=ext&size=0, То, что я хочу, это перенаправление, которое будет выполнено, с /0/azerty.ext как видимый URL.

Я пытался удалить R=301 флаг, но в этом случае перенаправление не выполняется.

Что мне не хватает?

1 ответ

Решение

Нашел решение (добавив косую черту в начале перенаправленного URL), хотя не уверен, почему...

RewriteRule ^/([0-9]+)/([a-z0-9_-]*)\.([a-z]+)$ /index.php?id=$2&type=$3&size=$1 [L]
Другие вопросы по тегам