X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=libs%2Flib_general.php;h=62062d7b2586bf4d094520b762cd11d0ac40ef6a;hb=6c5a53f41136b12d3cf0dd8dd448aecb929d44d7;hp=84dd1bf0f7818a73db7c5189da467e2dc74f3260;hpb=ab1e15e2008fda596d01a44c755fd2fb0c718521;p=ctracker.git diff --git a/libs/lib_general.php b/libs/lib_general.php index 84dd1bf..62062d7 100644 --- a/libs/lib_general.php +++ b/libs/lib_general.php @@ -87,20 +87,23 @@ function determineCrackerTrackerRealRemoteAddress () { // Is a proxy in use? if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { // Proxy was used - $address = $_SERVER['HTTP_X_FORWARDED_FOR']; + $address = trim($_SERVER['HTTP_X_FORWARDED_FOR']); } elseif (isset($_SERVER['HTTP_CLIENT_IP'])) { // Yet, another proxy - $address = $_SERVER['HTTP_CLIENT_IP']; + $address = trim($_SERVER['HTTP_CLIENT_IP']); } elseif (isset($_SERVER['REMOTE_ADDR'])) { // The regular address when no proxy was used - $address = getenv('REMOTE_ADDR'); + $address = trim(getenv('REMOTE_ADDR')); } - // This strips out the real address from proxy output - if (strstr($address, ',')) { + if ($address == 'unknown') { + // Invalid IP somehow given + $address = '0.0.0.0'; + elseif (strstr($address, ',')) { + // This strips out the real address from proxy output $addressArray = explode(',', $address); $address = $addressArray[0]; - } // END - if + } // Return the result return $address;