CGI :: Remote_addr - Versão aprimorada de "Remote_addr ()" do CGI.PM "
use CGI;
use CGI::remote_addr;
my $cgi = CGI -> new();
my $addr = $cgi -> remote_addr(); CGI::remote_addr implementa uma versão aprimorada do método remote_addr() fornecido pelo CGI.pm , que tenta retornar o endereço IP original da qual a conexão originou (que não é necessariamente o endereço IP da qual recebemos a conexão).
Simplesmente carregar CGI::remote_addr faz com que ele suba demais o método existente remote_addr() . Observe, porém, que este é um excesso global; Se você estiver executando com mod_perl, acabou de escapar para todos os seus aplicativos.
$ENV{REMOTE_ADDR} para encontrar o endereço IP, mas também procuramos $ENV{HTTP_X_FORWARDED_FOR} para encontrar o endereço IP. Se $ENV{HTTP_X_FORWARDED_FOR} estiver definido, tentamos isso primeiro.$ENV{REMOTE_ADDR} ou $ENV{HTTP_X_FORWARDED_FOR} . Eu já vi muitos casos em que os valores de $ENV{HTTP_X_FORWARDED_FOR} foram recheados com lixo e garantimos que você tenha apenas um IP real de volta.undef , não 127.0.0.1 (como CGI.pm faz).remote_addr ()
Retorna os endereços IP do host remoto.
Graham Termarsch ([email protected])
Copyright (c) 2008 Graham Termarsch. Todos os direitos reservados.
Esta biblioteca é software livre; Você pode redistribuí -lo e/ou modificá -lo nos mesmos termos que o próprio Perl.