Salam. Mən istıyirəmki sayta hər hansı bir istifadəçi proxy saytlar vasitəsilə girəndə onun həm real IP ünvanını həm də proxy IP ünvanını qeydə ala bilim. Bir funksiya qurmuşam. Opera ilə Opera Turbonu aktiv edib sayta girəndə IP dəyişilir. Bunu əsl real IP ni və Operanin öz İP sini ayırıa bilirem. Ama ki proxy saytlardan girende ancaq bir İP gosterir budun Global deyişənlərdə. Bunun hər hansı bir yolu varmı başqa? Necə qura bilərəm mən istədiyim cur? Mənim yazdığım funksiya belədir
/*İP ünvan*/ private function ip() { if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $array_ip = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); if($array_ip[1]) { $proxy_ip = $array_ip[1]; $real_ip = $array_ip[0]; } else { $real_ip = $array_ip[0]; $proxy_ip = false; }} else if(isset($_SERVER['HTTP_X_REAL_IP'])) { $real_ip = $_SERVER['HTTP_X_REAL_IP']; $proxy_ip = false; } else { $real_ip = $_SERVER['REMOTE_ADDR']; $proxy_ip = false; } self::$real_ip = ip2long($real_ip); self::$proxy_ip = ip2long($proxy_ip); }
Verilmiş cavablar və yazılan şərhlər (1 cavab var)
1
Salam. Siz proxy sayt bunu istəmədikdə real ip-ni öyrənə bilməzsiniz, mümkün deyil. Yəni məsələ öyrənə bilmək məsələsi deyil, məsələ proxy saytın real ip-ni headerdə göndərib göndərməmək məsələsidir. Headerlərdə göndərirsə dediyiniz SERVER dəyişəni ilə öyrənə bilərsiniz, göndərməzsə yox. Proxy saytların çoxunun da məqsədi gizlilik olduğuna görə təbii ki sizə istifadəçinin İP-sini göndərməzlər.
Sual verin
Cavab verin