我正在运行一个apache2服务器,我在那里进行localhost测试(
PHP 5.5),但我的托管服务提供商有PHP 5.3.我不知道这是否是一个问题,但我提到以防万一.
我的问题是:
我想要注意几个$_SERVER变量,但filter_input()函数由于某种原因返回false,但仅在我的主机服务器上.它在localhost上运行正常.
回声验证预期输出:
echo $_SERVER['HTTP_USER_AGENT']; echo $_SERVER['REMOTE_ADDR'];
按预期返回:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/33.0.1750.152 Safari/537.36 90.10.160.140 (Not the actual address)
但是当我使用过滤器时(即使没有指定过滤器/选项!),两者都是空白的:
filter_input(INPUT_SERVER,'HTTP_USER_AGENT',FILTER_SANITIZE_ENCODED,FILTER_FLAG_STRIP_LOW); filter_input(INPUT_SERVER,'REMOTE_ADDR',FILTER_VALIDATE_IP); filter_input(INPUT_SERVER,'HTTP_USER_AGENT'); filter_input(INPUT_SERVER,'REMOTE_ADDR');
以上所有内容在我的托管服务提供商上执行时返回一个空字符串/ FALSE,但在我的localhost上按预期工作.
我猜测主机上有一些配置参数设置不同.知道哪一个?或者还有什么可能是什么问题?
谢谢.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。