Desde Apache 2.4 , comencé a usar mod_remoteip en lugar de mod_extract_forward para reescribir la dirección del cliente desde x-forward-for proporcionada por los servidores frontend (barniz, calamar, apache, etc.).
Hasta ahora todo funciona bien con los módulos, es decir, php, cgi, wsgi, etc. - las direcciones de los clientes se muestran como deberían, pero no pude escribir la dirección del cliente en los registros de acceso (% a,% h,% {c }una). Sin suerte: siempre obtengo 127.0.0.1 (localhost forward ex.).
¿Cómo registrar la dirección IP del cliente cuando utilizo mod_remoteip?
Actualización: FUNCIONA O_O - vea la respuesta a continuación
Respuestas:
configuración de barniz:
secciones de configuración de apache 2.4:
mod_remoteip:
registro (% a hace el trabajo):
+
si hay un nginx al frente (por ejemplo, terminación SSL):
fuente
Según la documentación de mod_remoteip , el módulo simplemente debe reemplazar la dirección IP del cliente, pero solo cuando
RemoteIPHeader x-forwarded-for
está configurado ( doc ). También asegúrese de que el registro de su vhost utiliza el CustomLog que ha definido.fuente