我正在用htaccess重写一些url。我有这个:
RewriteRule ^mesas$ http://www.myweb.net/piezas.php?pos=1 [L]
RewriteRule ^sillas$ http://www.myweb.net/piezas.php?pos=2 [L]
RewriteRule ^taburetes$ http://www.myweb.net/piezas.php?pos=3 [L]
这很有效。如果我写了网址http://www.myweb.net/mesas 我得到http://www.myweb.net/piezas.php?pos=1。
现在我想添加其他参数。例: 我有这个http://www.myweb.net/mesas?pag=10 我想要这个:http://www.myweb.net/piezas.php?pos=1&pag=10
我试着用:
RewriteRule ^mesas?(.*)$ http://www.myweb.net/piezas.php?pos=1&$1 [L]
和
RewriteRule ^mesas$?(.*) http://www.myweb.net/piezas.php?pos=1&$1 [L]
但它不起作用。我做错了什么?
谢谢!
答案 0 :(得分:2)
尝试添加标记 QSA ,如下所示:
RewriteRule ^mesas$ http://www.myweb.net/piezas.php?pos=1 [L,QSA]
RewriteRule ^sillas$ http://www.myweb.net/piezas.php?pos=2 [L,QSA]
RewriteRule ^taburetes$ http://www.myweb.net/piezas.php?pos=3 [L,QSA]
它会将传入的查询字符串追加到现有的查询字符串中。