Die Zuverlässigkeit von $_SERVER['REMOTE_ADDR']
Der $_SERVER['REMOTE_ADDR'] ist eine wichtige Variable in der Webentwicklung. Bereitstellung der IP-Adresse des Clients, der eine HTTP-Anfrage initiiert. Es gibt jedoch ein weit verbreitetes Missverständnis, dass dieser Wert leicht gefälscht werden kann, was zu Bedenken hinsichtlich seiner Vertrauenswürdigkeit führt.
Kann $_SERVER['REMOTE_ADDR'] vertrauenswürdig sein?
Ja, es ist im Allgemeinen sicher, dem Wert $_SERVER['REMOTE_ADDR'] zu vertrauen. Sie stellt die IP-Adresse der TCP-Verbindung des Clients dar und kann nicht durch Ändern der HTTP-Header geändert werden. Dies liegt daran, dass die IP-Adresse eine Eigenschaft der TCP/IP-Verbindung ist und nicht als Teil der HTTP-Header übertragen wird.
Potenzielle Fallstricke
Es gibt jedoch solche eine wichtige Ausnahme von dieser Regel. Wenn sich Ihr Server hinter einem Reverse-Proxy befindet, stellt REMOTE_ADDR die IP-Adresse des Proxy-Servers dar, nicht die des Clients. In diesem Fall wird die IP-Adresse des Clients in einen HTTP-Header aufgenommen, normalerweise X-Forwarded-For.
Wenn sich Ihr Server beispielsweise hinter einem Reverse-Proxy mit der IP-Adresse 111.111.111.111 befindet, werden Anfragen an gestellt Ihr Server scheint von dieser IP-Adresse zu stammen. Um in diesem Szenario die IP-Adresse des Clients zu erhalten, müssten Sie den Header $_SERVER['REMOTE_ADDR'] ist ein zuverlässiger Ansatz zur Ermittlung der IP-Adresse des Clients.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3