目前我们的域名将指向某些代理IP(由于保护服务),并且所有流量都将通过代理IP并且仅将有效流量路由回我们的服务器。
这是我的问题,我有一个应用程序来捕获访问者的IP并在他们登录到我们的成员站点后保存到数据库,我有以下功能来获取IP并且它被保存为test.php用于测试目的:< / p>
function get_client_ip() {
$ipaddress = '';
if(getenv('HTTP_CLIENT_IP'))
$ipaddress = getenv('HTTP_CLIENT_IP');
else if(getenv('HTTP_X_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_X_FORWARDED_FOR');
else if(getenv('HTTP_X_FORWARDED'))
$ipaddress = getenv('HTTP_X_FORWARDED');
else if(getenv('HTTP_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_FORWARDED_FOR');
else if(getenv('HTTP_FORWARDED'))
$ipaddress = getenv('HTTP_FORWARDED');
else if(getenv('REMOTE_ADDR'))
$ipaddress = getenv('REMOTE_ADDR');
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
echo get_client_ip();
但是,如果我直接访问https://domain.com/test.php
,则IP不是预期的(它与我在whatismyip.com中检查的完全不同)。我一直联系我们的服务提供商,他们告诉我们必须访问像https://x.x.x.x/~sitename/test.php
这样的网址(其中x.x.x.x是我们的VPS服务器IP)来捕获准确的访问者IP,是的!它在我尝试使用URL时有效,但回到编码中的技术问题,如何集成 https://x.x.x.x/~sitename/test.php
在此函数中告诉代码从提供的URL获取IP?
请帮忙!!