axs*_*uul 2 php url mod-rewrite url-rewriting
在我的.htaccess中,我有以下内容
RewriteEngine On
RewriteRule ^users/?$ users.php
RewriteRule ^users/([a-z]+)/?$ users.php?username=$1
Run Code Online (Sandbox Code Playgroud)
如果我这样做,一切都按预期运作
http://example.com/users/
http://example.com/users/joeschmoe/
Run Code Online (Sandbox Code Playgroud)
并且PHP将读取"joeschmoe"作为值
$_GET['username']
Run Code Online (Sandbox Code Playgroud)
但是,如果我这样做
http://example.com/users/joeschmoe/?foo
Run Code Online (Sandbox Code Playgroud)
PHP不会接
$_GET['foo']
Run Code Online (Sandbox Code Playgroud)
知道为什么会这样,以及如何让它发挥作用?谢谢你的时间!
[QSA]向RewriteRule添加选项,这将使apache能够将查询字符串附加到重定向的URL:
RewriteRule ^users/?$ users.php [QSA]
RewriteRule ^users/([a-z]+)/?$ users.php?username=$1 [QSA]
Run Code Online (Sandbox Code Playgroud)