Mod_rewrite重定向网址问题

时间:2015-01-31 01:32:05

标签: mod-rewrite

我正在研究一个小的PHP脚本。我使用mod_rewrite重定向某些网址,但是当我想将http://localhost/mobile/g-phones-1.html?pn=2转换为http://localhost/mobile/phones.php?id=1&pn=2时,我发现了一个问题。

我用过这个

RewriteRule ^(.*)-phones-([^-]*)\.html?pn=([^-]*)$
phones.php?id=$2&pn=$3 [L]

但它不起作用。我该怎么办呢?

1 个答案:

答案 0 :(得分:0)

RewriteRule ^(.*)-phones-([^-]*)\.html$ phones.php?id=$2 [L,QSA]

QSA标志用于将当前查询字符串(pn=2)附加到重写的URL。 顺便说一下,你不能在重写规则中测试你的查询字符串,你必须使用:

RewriteCond  %{QUERY_STRING}   ^REGEXP$