我有一个htaccess文件,当前将整个url减去任何查询字符串,指向查询字符串变量url ....
RewriteRule ^([a-z0-9_-/]+)/?$ index.php?url=$1 [NC,L]
页/子页面/重要/啄/ΔT= 10 的
变为
的index.php?URL =页/子页面/重要/啄/ 的
最初设计忽略了查询字符串。现在我们需要它添加但是以这样的方式......
页/子页面/重要/啄/ T = 10安培;名称=鲍勃&安培;食品=干酪的
应该成为......
的index.php的 URL = 页/子页面/重要/啄/ &安培;ΔT= 10 &安培;名称= 的鲍勃的&安培;食品= 干酪的
简而言之,用户友好的组件被分配到一个get变量url,其余的被加上。
有谁能告诉我从哪里开始这个或如何修改重写规则以允许这个?
答案 0 :(得分:1)
您只需使用QSA
标志来附加查询字符串。
RewriteRule ^([a-z0-9_-/]+)/?$ index.php?url=$1 [NC,L,QSA]
答案 1 :(得分:0)
根据http://httpd.apache.org/docs/current/rewrite/flags.html#flag_qsa @Justin Iurman的回答应该已经解决了,即QSA旗帜。
我终于使用以下方法设法实现了这个目的:
RewriteRule ^([a-z0-9_-/]+)?$ index.php?url=$1&%{QUERY_STRING} [NC,L]