// Proxys werden am Ende dieses Headers hinzugefügt // IP-Adressen, die „versteckt“ sind. Um die tatsächliche IP zu ermitteln // Der Benutzer beginnt, am Anfang zu suchen, um die // IP-Adressbereiche zu finden, die nicht privat sind. Wenn nicht // Gefunden wird, wird REMOTE_ADDR als Wert genommen
Sehr hilfreich für mein nächstes Online-Verzeichnisprojekt.
Danke.
sehr schick
Sehr hilfreich für mein nächstes Online-Verzeichnisprojekt.
Danke.
nice
Danke! Ich suche schon ewig nach einem PHP-IP-Code!
Hier ist ein einfacherer Weg
Es ist einfacher, aber es liefert keine korrekte IP-Adresse, wenn sich Ihr Benutzer hinter einem Proxy befindet...
Das ist vollständiger, da ich es auf einer meiner Websites verwende...
function getRealIP()
{
if( $_SERVER[‘HTTP_X_FORWARDED_FOR’] != ” )
{
$client_ip =
( !empty($_SERVER[‘REMOTE_ADDR’]) ) ?
$_SERVER[‘REMOTE_ADDR’]
:
( ( !empty($_ENV[‘REMOTE_ADDR’]) ) ?
$_ENV[‘REMOTE_ADDR’]
:
“unbekannt” );
// Proxys werden am Ende dieses Headers hinzugefügt
// IP-Adressen, die „versteckt“ sind. Um die tatsächliche IP zu ermitteln
// Der Benutzer beginnt, am Anfang zu suchen, um die
// IP-Adressbereiche zu finden, die nicht privat sind. Wenn nicht
// Gefunden wird, wird REMOTE_ADDR als Wert genommen
$entries = split(‘[, ]’, $_SERVER[‘HTTP_X_FORWARDED_FOR’]);
reset($entries);
while (list(, $entry) = each($entries))
{
$entry = trim($entry);
if ( preg_match(“/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/”, $entry, $ip_list) )
{
// http://www.faqs.org/rfcs/rfc1918.html
$private_ip = array(
‘/^0\./’,
‘/^127\.0\.0\.1/’,
‘/^192\.168\..*/’,
‘/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/’,
‘/^10\..*/’);
$found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
if ($client_ip != $found_ip)
{
$client_ip = $found_ip;
break;
}
}
}
}
else
{
$client_ip =
( !empty($_SERVER[‘REMOTE_ADDR’]) ) ?
$_SERVER[‘REMOTE_ADDR’]
:
( ( !empty($_ENV[‘REMOTE_ADDR’]) ) ?
$_ENV[‘REMOTE_ADDR’]
:
“unbekannt” );
}
return $client_ip;
}
Der untenstehende Fehler ist
Notice: Undefined index: HTTP_X_FORWARDED_FOR in get-ip-address.php on line 19
Das sieht ziemlich geradlinig und einfach aus.
Danke.
funktioniert nicht, gibt “::1” als Ausgabe :-(
wo wird die IP-ADRESSE gespeichert?