Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erhalte ich die IP-Adresse eines Clients in Laravel 5?

Wie erhalte ich die IP-Adresse eines Clients in Laravel 5?

Linda Hamilton
Linda HamiltonOriginal
2024-10-20 08:33:31691Durchsuche

How Do I Get a Client's IP Address in Laravel 5 ?

So erhalten Sie die Client-IP-Adresse in Laravel 5

In Laravel kann das Abrufen der IP-Adresse eines Clients eine einfache Aufgabe sein. Im Kern-PHP erfolgt der Zugriff auf die IP-Adresse über $_SERVER["REMOTE_ADDR"]. In Laravel wird die IP-Adresse des Besuchers jedoch möglicherweise nicht genau erfasst.

Laravels Ansatz

Laravel bietet eine dedizierte Methode zum Abrufen der IP-Adresse des Kunden:

<code class="php">Request::ip();</code>

Diese Methode nutzt intern die getClientIps-Funktion des Symfony Request Object, um den IP-Adressabrufprozess abzuwickeln.

Funktionsweise von getClientIps:

Die getClientIps-Methode folgt a mehrstufiger Ansatz:

  1. Vertrauenswürdige Proxy-Validierung: Es prüft, ob die Anfrage von einem vertrauenswürdigen Proxy kommt, basierend auf den konfigurierten vertrauenswürdigen IP-Bereichen.
  2. Header-Analyse: Basierend auf den vertrauenswürdigen Headern, die in der Konfiguration „trustedHeaders“ angegeben sind, werden IP-Adressen aus den weitergeleiteten oder Client-IP-Headern extrahiert.
  3. IP-Kettenerstellung: Es wird gebildet eine Kette von IP-Adressen, einschließlich der ursprünglichen IP der Anfrage, der extrahierten Header und der vertrauenswürdigen Proxys.
  4. Entfernung nicht vertrauenswürdiger Proxys: Alle als vertrauenswürdige Proxys identifizierten IP-Adressen werden aus der Kette entfernt.
  5. Client-IP-Abruf: Die erste IP-Adresse in der nicht vertrauenswürdigen Proxy-gefilterten Kette wird als IP-Adresse des Clients identifiziert.
  6. Portentfernung: Aus Gründen der Konsistenz werden alle Portinformationen aus der Client-IP-Adresse entfernt.

Das obige ist der detaillierte Inhalt vonWie erhalte ich die IP-Adresse eines Clients in Laravel 5?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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