【发布时间】:2017-04-12 16:44:43
【问题描述】:
在我的本地服务器 (XAMPP) 上,文件 .htaccess 的内容是:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/.]+?)(/.+)?$ index.php/$1 [L]
在服务器上上传这个文件后,我不能再传递参数了。我收到一条消息“找不到文件。”
例如在本地服务器上,我传递给 url:www.foo.com/admin。并且 PHP 变量 $_SERVER["PATH_INFO"] 等于 "admin"
不幸的是,这在服务器上不起作用。有人能解释一下原因吗?
我不想使用这条规则#RewriteRule ^([^/.]+?)(/.+)?$ index.php?$1 [L]。因为那时我不能传递 $_GET 参数。 www.foo.com/admin?id=1
【问题讨论】:
-
对于问题末尾的规则,您必须添加QSA flag。
-
@GrasDouble 谢谢!你救了我!