Apache mod_rewrite:用查询字符串替换路径

时间:2015-04-07 11:51:59

标签: apache mod-rewrite qsa

我有以下规则:

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

问题是,当我在浏览器中转到网址/0/azerty.ext时,网址会显示为/index.php?id=azerty&type=ext&size=0。我想要的是重定向,/0/azerty.ext作为可见的URL。

我尝试删除R=301标志,但在这种情况下,不会执行重定向。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

找到一个解决方案(在重定向的URL的开头添加斜杠),不知道为什么......

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