Od Apache 2.4 zacząłem używać mod_remoteip zamiast mod_extract_forwarded do przepisywania adresu klienta z X-forwarded-for dostarczanych przez serwery frontendowe (lakier, kałamarnica, apache itp.).
Jak dotąd wszystko działa poprawnie z modułami, tj. Php, cgi, wsgi itp ... - adresy klientów są wyświetlane tak, jak powinny, ale nie mogłem zapisać adresu klienta w dziennikach dostępu (% a,% h,% {c }za). Bez powodzenia - zawsze dostaję 127.0.0.1 (np. Localhost forward).
Jak zalogować adres IP klienta podczas korzystania z mod_remoteip?
Aktualizacja: TO DZIAŁA O_O - patrz odpowiedź poniżej
Odpowiedzi:
konfiguracja lakieru:
sekcje konfiguracji apache 2.4:
mod_remoteip:
logowanie (% a wykonuje zadanie):
+
jeśli z przodu jest nginx (np. zakończenie SSL):
źródło
Zgodnie z dokumentacją mod_remoteip moduł powinien po prostu zastąpić adres IP klienta, ale tylko wtedy, gdy
RemoteIPHeader x-forwarded-for
jest ustawiony ( doc ). Upewnij się także, że rejestrowanie twojego vhosta korzysta ze zdefiniowanego przez ciebie CustomLog.źródło