我在我的开发服务器上为客户端开发了一个网站,并将其推送到生产服务器。在这两个站点上,URL 类似于http://www.siteurl.com/blogs/?m=09&y=2012
在开发服务器上,如果 I var_dump($_GET)
,我会得到我期望的值。
在生产服务器上,如果 I var_dump($_GET)
,我得到一个空数组。
如果有帮助,我会发布,我什至phpinfo()
不知道哪些设置可能会导致这种情况。
谢谢。
我在我的开发服务器上为客户端开发了一个网站,并将其推送到生产服务器。在这两个站点上,URL 类似于http://www.siteurl.com/blogs/?m=09&y=2012
在开发服务器上,如果 I var_dump($_GET)
,我会得到我期望的值。
在生产服务器上,如果 I var_dump($_GET)
,我得到一个空数组。
如果有帮助,我会发布,我什至phpinfo()
不知道哪些设置可能会导致这种情况。
谢谢。
我遇到过同样的问题。
请参阅此论坛讨论:http: //forum.kohanaframework.org/discussion/734/_get-empty/p1
Solved replacing this:
RewriteRule .* index.php/$0 [PT,L]
for this:
RewriteRule .* index.php?$0 [PT,L]
将新规则添加到 .htaccess。它会起作用
RewriteRule ^[A-Za-z]+$ index.php?$1 [QSA,L]
正如我上面所说,您需要QSA
标志(阅读“查询字符串附加”)将查询字符串传递给 PHP:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /subdir/
RewriteRule ^index\.php$ - [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /subdir/index.php [L,QSA]
</IfModule>