【发布时间】:2011-10-03 20:49:46
【问题描述】:
我正在编写一个基于使用 mod_rewrite 将 URI 作为 GET 参数传递的简单 URL 路由代码,就像 Drupal 所做的那样。所以我有规则:
RewriteRule ^(.*)$ index.php?q=$1 [QSA,L]
URL http://www.example.com/test/1 会给我“/test/1/”作为值传递的 $_GET['q'],而不是通常的 index.php/test/1 并且必须从 $_SERVER[ 中提取它'REQUEST_URI']。
问题是,mod_rewrite QSA 标志允许我仍然正常使用查询字符串,我发现这对于过滤器和分页等参数非常有用,例如“/products/category/?pg=1”。
这在 Nginx 和 Lighttpd 服务器上是否同样有效?我希望我的代码是可移植的。
谢谢。
【问题讨论】:
标签: php url-rewriting nginx url-routing lighttpd