Heim >Backend-Entwicklung >PHP-Tutorial >Verwendung von HTTP_X_FORWARDED_FOR und REMOTE_ADDR PHP

Verwendung von HTTP_X_FORWARDED_FOR und REMOTE_ADDR PHP

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-08-08 09:21:521303Durchsuche

Original-URL: http://qq398705749.iteye.com/blog/963818

Verwendung von HTTP_X_FORWARDED_FOR und REMOTE_ADDR in PHP
1 aktuell Die IP-Adresse des Computers des Benutzers auf der Seite
2.HTTP_X_FORWARDED_FOR: Das Gateway des Computers des Benutzers, der die aktuelle Seite durchsucht
3.HTTP_CLIENT_IP: Die IP des Clients (Dieses Attribut wurde als Pseudoattribut verifiziert und existiert tatsächlich nicht. Bitte stellen Sie es nicht falsch dar )
Verwenden Sie $_SERVER["REMOTE_ADDR"] in PHP, um das zu erhalten Wenn der Client jedoch einen Proxyserver für den Zugriff verwendet, erhalten Sie die IP-Adresse des Proxyservers und nicht die tatsächliche IP-Adresse des Clients. Um die echte IP-Adresse des Clients über einen Proxyserver zu erhalten, verwenden Sie $_SERVER["HTTP_X_FORWARDED_FOR"] zu lesen.
Es ist jedoch zu beachten, dass nicht jeder Proxyserver $_SERVER["HTTP_X_FORWARDED_FOR"] verwenden kann, um die echte IP des Clients zu lesen. Einige der von dieser Methode gelesenen Dinge sind immer noch Proxys. Die IP des Servers.
Zu beachten ist außerdem, dass der mit $_SERVER["HTTP_X_FORWARDED_FOR"] erhaltene Wert leer ist, wenn der Client nicht über einen Proxyserver zugreift.
if ($_SERVER['HTTP_X_FORWARDED_FOR'] && preg_match('/^([0-9]{1,3}.){3}[0-9]{1,3} $/',$_SERVER['HTTP_X_FORWARDED_FOR'])) {
$onlineip = $_SERVER['HTTP_X_FORWARDED_FOR']
} elseif ($_SERVER[' HTTP_CLIENT_IP'] && preg_match('/^([0-9]{1,3}.){3}[0-9]{1,3}$/',$_SERVER['HTTP_CLIENT_IP'])) {
$onlineip = $_SERVER['HTTP_CLIENT_IP'];
}
Ermitteln Sie den Unterschied zwischen den drei Attributen der IP-Adresse des Benutzers (HTTP_X_FORWARDED_FOR ,HTTP_VIA,REMOTE_ADDR)
1. Wenn kein Proxyserver verwendet wird:
REMOTE_ADDR = Ihre IP
HTTP_VIA = nein Wert Oder wird nicht angezeigt
HTTP_X_FORWARDED_FOR = Kein Wert oder wird nicht angezeigt
2. Bei Verwendung eines transparenten Proxyservers: Transparente Proxies
REMOTE_ADDR = Die letzte Proxy-Server-IP
HTTP_VIA = Proxy-Server-IP
HTTP_X_FORWARDED_FOR = Bei der Weiterleitung über mehrere Proxy-Server ähnelt dieser Wert dem folgenden: 203.98.182.163, 203.98.182.163, 203.129.72.215.
Diese Art von Proxyserver leitet Ihre Informationen immer noch an die Person weiter, die Sie besuchen, und kann nicht den Zweck erreichen, Ihre wahre Identität zu verbergen.
3. Bei Verwendung gewöhnlicher anonymer Proxyserver: Anonyme Proxys
REMOTE_ADDR = Letzte Proxyserver-IP
HTTP_VIA = Proxyserver-IP
HTTP_X_FORWARDED_FOR = Proxyserver-IP. Bei der Weitergabe über mehrere Proxyserver ähnelt dieser Wert dem folgenden: 203.98.182.163, 203.98.182.163, 203.129.72.215.
Verbergen Sie Ihre echte IP, aber zeigen Sie Ihren Besuchern, dass Sie einen Proxyserver verwenden, um auf sie zuzugreifen.
4. Die Verwendung betrügerischer Proxyserver: Verzerrung von Proxys
REMOTE_ADDR = Proxyserver-IP
HTTP_VIA = Proxyserver-IP
HTTP_X_FORWARDED_FOR = Zufällige IP Bei der Weiterleitung über mehrere Proxyserver ähnelt dieser Wert dem folgenden: 203.98.182.163, 203.98.182.163, 203.129.72.215.
Sagen Sie dem Besucher, dass Sie einen Proxyserver verwenden, erfinden Sie jedoch eine gefälschte zufällige IP anstelle Ihrer echten IP, um diese zu fälschen.
5. Bei Verwendung von Proxyservern mit hoher Anonymität: Proxys mit hoher Anonymität (Elite-Proxys)
REMOTE_ADDR = Proxyserver-IP
HTTP_VIA = Kein Wert oder wird nicht angezeigt
HTTP_X_FORWARDED_FOR = Kein Wert oder wird nicht angezeigt. Beim Durchlaufen mehrerer Proxyserver ähnelt der Wert dem folgenden: 203.98.182.163, 203.98.182.163, 203.129.72.215.
Ersetzt alle Ihre Informationen vollständig durch die Informationen des Proxyservers, so wie Sie diesen Proxyserver verwenden, um direkt auf das Objekt zuzugreifen.

Das Obige stellt die Verwendung von HTTP_X_FORWARDED_FOR und REMOTE_ADDR in PHP vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Stellungnahme:
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