Advertisement
Guest User

Untitled

a guest
May 25th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. if (!empty($_SERVER['HTTP_CLIENT_IP'])
  2. && self::validate_ip($_SERVER['HTTP_CLIENT_IP'])
  3. ) {
  4. return $_SERVER['HTTP_CLIENT_IP'];
  5. }
  6.  
  7. // check for IPs passing through proxies
  8. if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  9. // check if multiple ips exist in var
  10. $iplist = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
  11. foreach ($iplist as $ip) {
  12. if (SMVCApplicationHelper::ValidateIp($ip)) {
  13. return $ip;
  14. }
  15. }
  16. }
  17.  
  18. if (!empty($_SERVER['HTTP_X_FORWARDED'])
  19. && SMVCApplicationHelper::ValidateIp($_SERVER['HTTP_X_FORWARDED'])
  20. ) {
  21. return $_SERVER['HTTP_X_FORWARDED'];
  22. }
  23. if (!empty($_SERVER['HTTP_X_CLUSTER_CLIENT_IP'])
  24. && SMVCApplicationHelper::ValidateIp($_SERVER['HTTP_X_CLUSTER_CLIENT_IP'])
  25. ) {
  26. return $_SERVER['HTTP_X_CLUSTER_CLIENT_IP'];
  27. }
  28. if (!empty($_SERVER['HTTP_FORWARDED_FOR'])
  29. && SMVCApplicationHelper::ValidateIp($_SERVER['HTTP_FORWARDED_FOR'])
  30. ) {
  31. return $_SERVER['HTTP_FORWARDED_FOR'];
  32. }
  33. if (!empty($_SERVER['HTTP_FORWARDED'])
  34. && SMVCApplicationHelper::ValidateIp($_SERVER['HTTP_FORWARDED'])
  35. ) {
  36. return $_SERVER['HTTP_FORWARDED'];
  37. }
  38.  
  39. // return unreliable ip since all else failed
  40. return $_SERVER['REMOTE_ADDR'];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement