CGI :: Remote_Addr - Verbesserte Version von CGI.pms "remote_addr ()" "
use CGI;
use CGI::remote_addr;
my $cgi = CGI -> new();
my $addr = $cgi -> remote_addr(); CGI::remote_addr implementiert eine erweiterte Version der von CGI.pm bereitgestellten remote_addr() -Methode, mit der versucht wird, die ursprüngliche IP -Adresse zurückzugeben, aus der die Verbindung stammt (was nicht unbedingt die IP -Adresse ist, von der wir die Verbindung erhalten haben).
Wenn Sie einfach CGI::remote_addr laden, veranlasst es die vorhandene remote_addr() -Methode. Beachten Sie jedoch, dass dies eine globale Überfahrt ist. Wenn Sie unter mod_perl laufen, haben Sie es für alle Ihre Anwendungen nur übernommen.
$ENV{REMOTE_ADDR} um die IP -Adresse zu finden, sondern auch in $ENV{HTTP_X_FORWARDED_FOR} suchen, um die IP -Adresse zu finden. Wenn $ENV{HTTP_X_FORWARDED_FOR} definiert ist, versuchen wir das zuerst.$ENV{REMOTE_ADDR} oder $ENV{HTTP_X_FORWARDED_FOR} vorhanden ist. Ich habe viele Fälle gesehen, in denen die Werte für $ENV{HTTP_X_FORWARDED_FOR} mit Müll gefüllt wurden, und wir stellen sicher, dass Sie nur eine echte IP -Rückseite erhalten.undef zurück, nicht 127.0.0.1 (wie CGI.pm ).Remote_addr ()
Gibt die IP -Adresse (ES) des Remote -Hosts zurück.
Graham Terarsch ([email protected])
Copyright (C) 2008 Graham Terarsch. Alle Rechte vorbehalten.
Diese Bibliothek ist kostenlose Software; Sie können es umverteilen und/oder unter den gleichen Bedingungen wie Perl selbst ändern.