目前我正在使用此脚本记录我的用户IP地址:
$userip = $_SERVER['REMOTE_ADDR'];
但是,在我购买Anti-DDoS HTTP代理后,它会返回代理IP。
$_SERVER['REMOTE_ADDR'] -> 198.12.12.102
我正在将Cloudflare与代理一起使用,因此我在Cloudflare的IP字段中输入了Proxy的IP,然后选择了“绕过Cloudflare网络”。
答案 0 :(得分:0)
反向代理可以将原始用户的IP存储在HTTP标头中。转储请求标头以查看是否是这种情况。如果没有这样的标题,那么你无能为力。
REMOTE_ADDR是与服务器建立实际套接字连接的系统的地址。如果涉及代理,您应该会看到代理IP。
答案 1 :(得分:0)
嗯,是的,如果请求是代理的,那么所有PHP看到的都是代理的地址。在这种情况下,,仅在这种情况下,您应该查看其他HTTP标头。代理可以应,将原始IP地址添加为额外的HTTP标头,例如X-Forwarded-For
,$_SERVER['HTTP_X_FORWARDED_FOR']
中可以使用。{/ p>
注意这些标题通常存在安全风险;只有当您知道您的代理您控制权时,您代表才明确地添加此标题