Žan*_*rle 1 php get url-rewriting query-string
我遇到了有关URL重写的问题.我正在使用Apache的mod重写来重写URL.例如,我重写了URL
www.website.com/some/path/ 至 request.php?string=some/path/.然后我显示该URL的具体响应.现在我的重写规则如下所示:
RewriteRule ^([a-z_/\?]+)$ request.php?string=$1
Run Code Online (Sandbox Code Playgroud)
但问题是,如果我有URL www.website.com/some/data/?id=12&name=John并重写它,我得到这样的东西:request.php?string=some/data/?id=12&name=John.似乎在这个例子中另一个问号混淆了PHP.如果我尝试$_GET['string']在request.php中检索,我得到的是:some/data/.
有关进一步参考,Gmail会使用与其URL相似的内容:
https://mail.google.com/mail/?ui=1&shva=1
我建议(作为马里奥)来看看QSA标志(查询字符串追加).另外,我会从正则表达式中的字符类中取出问号:
RewriteRule ^([a-z_/]+)$ request.php?string=$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
871 次 |
| 最近记录: |