【发布时间】:2014-03-09 21:18:50
【问题描述】:
在我的本地机器上,一切正常,但在肝脏服务器上,我无法读取查询字符串
echo $_SERVER['REQUEST_URI']; == /purchase?id=2
echo $_SERVER['QUERY_STRING']; == EMPTY
怎么会这样?
这是 htaccess 文件内容:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
【问题讨论】:
-
检查你是否有 .htaccess 进行重写,如果有,你需要使用 $_SERVER['REDIRECT_QUERY_STRING']
-
在本地机器上它与 QUERY_STRING 的结果相同,但在实时服务器上它给出:未定义的索引错误
-
你的 php 版本是多少。请检查 phpinfo() 函数并与我们分享。
-
转储整个 $_SERVER 数组以获得更大的视图:die("
".print_r($_SERVER, true)."
"); -
@DalımÇepiç 这是 PHP 版本 5.3.10-1ubuntu3.8
标签: php apache digital-ocean