Para quem utiliza solução de proxy reverso juntamente com application server, já deve ter tido problemas com os logs. O IP que aparece é o do Proxy e não de quem fez a requisição HTTP.
Segue uma solução encontrada para o problema:
Criar o arquivo AdjustRemoteAddrAccordingToHeader.pm
package Apache::AdjustRemoteAddrAccordingToHeader;
sub handler
{
my $r = shift;
my $configuredValue = $r->dir_config ("UseIPFromHeader");
if ($configuredValue)
{
my $ip = $r->header_in($configuredValue);
if ($ip)
{
$r->connection->remote_ip($ip);
}
}
else
{
print STDERR "AdjustRemoteAddrAccordingToHeader: PerlSetVar UseIPFromHeader is not set, so I did not do anything\n";
}
# Adjust for Oracle HTTP Server and REMOTE_ADDR
# Remove this line if not necessary
$r->header_in("ClientIP", $r->connection->remote_ip());
return OK;
}
return 1;
Adicionar no httpd.conf
PerlRequire /u01/app/oracle/product/as10g/MidTier/Apache/Apache/conf/AdjustRemoteAddrAccordingToHeader.pm
PerlPostReadRequestHandler Apache::AdjustRemoteAddrAccordingToHeader
PerlSetVar UseIPFromHeader X-Forwarded-For
quarta-feira, 23 de setembro de 2009
Proxy Reverso + Application Server + Ip errado nos logs
13:48
No comments
0 comentários:
Postar um comentário