>  기사  >  백엔드 개발  >  php는 사용자의 실제 IP를 얻습니다

php는 사용자의 실제 IP를 얻습니다

WBOY
WBOY원래의
2016-07-25 08:45:14998검색

如果用户使用了代理服务器,真实ip就不在HTTP_CLIENT_IP头中,而需要通过http头HTTP_X_FORWARDED_FOR来解析了。

如下php函数:

  1. function GetIP() { //获取IP
  2. if ($_SERVER["HTTP_X_FORWARDED_FOR"])
  3. $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
  4. else if ($_SERVER["HTTP_CLIENT_IP"])
  5. $ip = $_SERVER["HTTP_CLIENT_IP"];
  6. else if ($_SERVER["REMOTE_ADDR"])
  7. $ip = $_SERVER["REMOTE_ADDR"];
  8. else if (getenv("HTTP_X_FORWARDED_FOR"))
  9. $ip = getenv("HTTP_X_FORWARDED_FOR");
  10. else if (getenv("HTTP_CLIENT_IP"))
  11. $ip = getenv("HTTP_CLIENT_IP");
  12. else if (getenv("REMOTE_ADDR"))
  13. $ip = getenv("REMOTE_ADDR");
  14. else
  15. $ip = "Unknown";
  16. return $ip;
  17. }
  18. ?>
复制代码

PHP


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.