Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich bei Verwendung von CloudFlare auf echte Besucher-IP-Adressen zugreifen?

Wie kann ich bei Verwendung von CloudFlare auf echte Besucher-IP-Adressen zugreifen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-25 02:38:021067Durchsuche

How to Access Real Visitor IP Addresses When Using CloudFlare?

Zugriff auf echte Besucher-IP-Adressen mit CloudFlare

Webanwendungen verlassen sich häufig auf $_SERVER['REMOTE_ADDR'], um die IP-Adressen zu verfolgen und zu protokollieren der Benutzer, die ihre Websites besuchen. Wenn Sie CloudFlare jedoch zum Caching und Schutz verwenden, gehören die empfangenen IP-Adressen CloudFlare und nicht den tatsächlichen Besuchern. Dies stellt eine Herausforderung für die genaue Verfolgung von IP-Adressen in PHP dar.

Spezielle Variablen von CloudFlare

Um dieses Problem zu beheben, stellt CloudFlare zusätzliche Servervariablen bereit, die zum Abrufen der verwendet werden können echte Besucher-IP-Adresse. Zu diesen Variablen gehören:

  • $_SERVER["HTTP_CF_CONNECTING_IP"]: Enthält die IP-Adresse des tatsächlichen Besuchers.
  • $_SERVER["HTTP_CF_IPCOUNTRY"]: Gibt das Land des Besuchers an.
  • $_SERVER["HTTP_CF_RAY"]: Eine eindeutige Kennung für die Anfrage.
  • $_SERVER["HTTP_CF_VISITOR"]: Gibt an, ob die Anfrage über HTTP oder HTTPS gestellt wurde.

Korrigieren der IP-Adresse

Um die tatsächliche Besucher-IP-Adresse während der Nutzung von CloudFlare abzurufen, können Sie den folgenden Code verwenden:

<code class="php">if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
  $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}</code>

Dadurch wird die zugewiesen Fügen Sie der Variable $_SERVER['REMOTE_ADDR'] die echte Besucher-IP-Adresse hinzu, sodass Sie sie genau verfolgen und protokollieren können.

Sicherheitsüberlegungen

Es ist wichtig zu beachten, dass jeder mit direktem Zugriff auf die IP Ihres Servers können diese Header-Werte manipulieren. Um die Gültigkeit sicherzustellen, sollten Sie prüfen, ob $_SERVER['REMOTE_ADDR'] einer legitimen CloudFlare-IP-Adresse entspricht, bevor Sie sich darauf verlassen.

Das obige ist der detaillierte Inhalt vonWie kann ich bei Verwendung von CloudFlare auf echte Besucher-IP-Adressen zugreifen?. 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