【发布时间】:2012-04-23 03:41:38
【问题描述】:
我遇到了有关 URL 重写的问题。我正在使用 Apache 的 mod rewrite 来重写 URL。比如我重写URL
-
www.website.com/some/path/到 -
request.php?string=some/path/。
然后我会显示此 URL 的特定响应。现在我的重写规则是这样的:
RewriteRule ^([a-z_/\?]+)$ request.php?string=$1
但是如果我有 URL www.website.com/some/data/?id=12&name=John 并重写它,问题就开始了,我得到这样的东西:request.php?string=some/data/?id=12&name=John。似乎在这个例子中另一个问号混淆了 PHP。如果我尝试在 request.php 中检索 $_GET['string'],我得到的只是:some/data/。
为了进一步参考,Gmail 对其 URL 做了类似的事情:https://mail.google.com/mail/?ui=1&shva=1
【问题讨论】:
-
你试过
[QSA]标志了吗?
标签: php url-rewriting get query-string