由于使用了云主机,所以原来用REMOTE_ADDR获取的IP,只是一个代理IP,因此要使用以下两段代码代替才能获取客户端IP。
$ip = $GLOBALS[HTTP_SERVER_VARS][HTTP_X_FORWARDED_FOR]? $GLOBALS[HTTP_SERVER_VARS][HTTP_X_FORWARDED_FOR] : $_SERVER[REMOTE_ADDR];
$ip = $ip?$ip:$GLOBALS[HTTP_SERVER_VARS][REMOTE_ADDR];
echo $ip;
参考资料:
一、没有使用代理服务器的情况:
REMOTE_ADDR = 您的 IP
HTTP_VIA = 没数值或不显示
HTTP_X_FORWARDED_FOR = 没数值或不显示
二、使用透明代理服务器的情况:Transparent Proxies<