mod_rewrite:args丢失了

时间:2011-04-03 09:06:36

标签: apache mod-rewrite

我想做一个简单的(?)重写 这是我的.htaccess:

Options +FollowSymlinks  
RewriteEngine On  
RewriteCond %{REQUEST_URI} ^/batiments-[0-9]+/?$  
RewriteRule ^batiments-([0-9]+)/?$ a_batiments.php?e=$1  

我想要重写:http://xyz.com/batiments-123 ==> http://xyz.com/a_batiments?e=123

我只获得地址:http://xyz.com/a_batiments,没有参数 在重写日志中,我看到一行包含拆分:

  

192.168.0.2 - (非常长的行被抑制)(3)split uri = a_batiments.php?e = 123 - > uri = a_batiments.php,args = e = 123

我理解分割对于匹配很有用,但是args永远不会放回到地址中。为什么?怎么办?

1 个答案:

答案 0 :(得分:1)

尝试将[R] flag添加到RewriteRule。这样重写就会导致HTTP重定向被发送到客户端。