两部分问题。查找真实IP地址
首先,当我尝试在隐藏的输入字段中回显IP地址时,表单停止提交。我有jQuery来验证一些输入,当IP地址出现在该字段时,它全部停止。
其次我得到的IP地址不是我在终端登记时找到的地址。为什么我的网站,通过Godaddy托管,显示看起来像代理IP而不是我的机器IP?
这是我正在使用的代码。
function ipCheck() {
if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
}
elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$ip = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$ip = getenv('HTTP_FORWARDED_FOR');
}
elseif (getenv('HTTP_FORWARDED')) {
$ip = getenv('HTTP_FORWARDED');
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
//$ip = str_replace('.','', $ip);
return $ip;
}
因为你在代理的背后?因为你的网关正在使用NAT? –
我们可能需要更多信息来回答第一个问题。例如,IP地址所在字段的HTML,填充方式以及验证方式。 – andrewsi
我的朋友,您的机器在本地网络中的IP不等于您路由器的IP(当您浏览Internet时使用)。 –