Desde o Apache 2.4 , comecei a usar o mod_remoteip em vez de mod_extract_forwarded para reescrever o endereço do cliente a partir do x-forwarded fornecido pelos servidores de front-end (verniz, squid, apache etc.).
Até agora, tudo funciona bem com os módulos, ou seja, php, cgi, wsgi etc ... - os endereços dos clientes são mostrados como deveriam, mas eu não consegui escrever o endereço do cliente nos logs de acesso (% a,% h,% {c }uma). Sem sorte - estou sempre recebendo 127.0.0.1 (localhost forward ex.).
Como registrar o endereço IP do cliente ao usar mod_remoteip?
Atualização: FUNCIONA O_O - veja a resposta abaixo
Respostas:
configuração de verniz:
seções de configuração do apache 2.4:
mod_remoteip:
log (% a faz o trabalho):
+
se houver um nginx na frente (por exemplo, terminação SSL):
fonte
De acordo com a documentação do mod_remoteip , o módulo deve simplesmente substituir o endereço IP do cliente, mas somente quando
RemoteIPHeader x-forwarded-for
estiver definido ( doc ). Verifique também se o registro do seu vhost utiliza o CustomLog que você definiu.fonte