Heim > Backend-Entwicklung > PHP-Tutorial > PHP erhält die echte IP des Clients

PHP erhält die echte IP des Clients

巴扎黑
Freigeben: 2016-11-23 13:50:40
Original
952 Leute haben es durchsucht

function GetIP(){ 
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) 
$ip = getenv("HTTP_CLIENT_IP"); 
else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) 
$ip = getenv("HTTP_X_FORWARDED_FOR"); 
else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) 
$ip = getenv("REMOTE_ADDR"); 
else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) 
$ip = $_SERVER['REMOTE_ADDR']; 
else 
$ip = "unknown"; 
return($ip); 
}
Nach dem Login kopieren

regist=off problem
if ($register_globals!=1) {
@extract($_SERVER, EXTR_SKIP);
@extract($_COOKIE, EXTR_SKIP); extract($_SESSION, EXTR_SKIP);
@extract($_POST, EXTR_SKIP);
@extract( $_ENV, EXTR_SKIP);
}
Unter anderem ist REMOTE_ADDR leichter zu verstehen; was HTTP_x_FORWARDED_FOR betrifft, habe ich einige Informationen gefunden und Folgendes gesagt:
In PHP wird $_SERVER["REMOTE_ADDR"] verwendet, um die IP-Adresse des Clients abzurufen. Wenn der Client jedoch einen Proxyserver für den Zugriff verwendet, wird die IP-Adresse des Proxyservers und nicht die tatsächliche IP-Adresse des Clients abgerufen. Um die echte IP-Adresse des Clients über einen Proxyserver zu erhalten, lesen Sie sie mit $_SERVER["HTTP_X_FORWARDED_FOR"] aus.
Es ist jedoch zu beachten, dass nicht jeder Proxyserver $_SERVER["HTTP_X_FORWARDED_FOR"] verwenden kann, um die tatsächliche IP des Clients zu lesen. Einige der von dieser Methode gelesenen IPs sind immer noch die IP des Proxyservers.

Was HTTP_CLIENT_IP betrifft, hieß es in einem Beitrag
'HTTP_CLIENT_IP' ist die IP des Benutzers, 'HTTP_X_FORWARDED_FOR' ist die IP des Proxys
Diese IP-Header-Nachrichten sind möglicherweise nicht verfügbar (aufgrund unterschiedlicher Browser und verschiedener Netzwerkgeräte). sendet möglicherweise unterschiedliche IP-Header-Nachrichten. Daher versucht PHP, jede IP-Header-Nachricht zu beurteilen, und wenn es eine gibt, nimmt sie eine davon

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage