Łukasz C.

Łukasz C. Senior Technical
Architect

Temat: nginx jako proxy, apache dalej i remote_addr

Witam,

mam postawionego nginxa ktory robi za proxy i przerzuca ruch z domen na wirtualki na ktorych stoja apacze, problem jest taki ze wszystkie requesty do danego apacza ida z jednego ip (nginx), przykladowo: 1.2.3.4 no i aplikacja ktora cos tam robi widzi wszystkich jako jedno i to samo ip.

Dokopalem sie w dokumentacji do paru wpisow w nginxie ktore przerzucaja prawdziwe ip klienta dalej,
natomiast nie wiem jak zmusic apacza do tego aby "wstawil" to ip w naglowek http i nie robil jaj :)

help needed :)

konto usunięte

Temat: nginx jako proxy, apache dalej i remote_addr

Skoro nginx robi za proxy to wcale sobie nie robi jaj mówiąc, że to od niego wychodzą połączenia do backendów bo przecież tak właśnie jest.
To czego ci potrzeba to sprawdzać nagłówek X-FORWARDED-FOR, który właśnie po to został wymyślony aby móc prześledzić przy połączeniach przez proxy skąd request przyszedł i przez co przeszedł.

http://en.wikipedia.org/wiki/X-Forwarded-For

Co prawda nginxa nie używałem jako proxy ale w dokumentacji piszą http://wiki.nginx.org/HttpProxyModule
że masz do dyspozycji zmienną $proxy_add_x_forwarded_for którą sobie możesz do nagłówków doklejać.Łukasz M. edytował(a) ten post dnia 16.01.11 o godzinie 20:17

Temat: nginx jako proxy, apache dalej i remote_addr

Łukasz M.:
http://en.wikipedia.org/wiki/X-Forwarded-For

Co prawda nginxa nie używałem jako proxy ale w dokumentacji piszą http://wiki.nginx.org/HttpProxyModule
że masz do dyspozycji zmienną $proxy_add_x_forwarded_for którą sobie możesz do nagłówków doklejać.
Łukasz Cepowski:

Dokopalem sie w dokumentacji do paru wpisow w nginxie ktore przerzucaja prawdziwe ip klienta dalej,
natomiast nie wiem jak zmusic apacza do tego aby "wstawil" to ip w naglowek http i nie robil jaj :)

ta część już działa, czytaj zanim odpowiesz ;p

w skrócie: mod_rpaf
dłuższa wersja: http://devrandom.pl/blog/2011/01/14/reverse-proxy-x-fo...Mariusz Gronczewski edytował(a) ten post dnia 16.01.11 o godzinie 21:55

konto usunięte

Temat: nginx jako proxy, apache dalej i remote_addr

Mariusz Gronczewski:
Łukasz M.:
http://en.wikipedia.org/wiki/X-Forwarded-For

Co prawda nginxa nie używałem jako proxy ale w dokumentacji piszą http://wiki.nginx.org/HttpProxyModule
że masz do dyspozycji zmienną $proxy_add_x_forwarded_for którą sobie możesz do nagłówków doklejać.
Łukasz Cepowski:

Dokopalem sie w dokumentacji do paru wpisow w nginxie ktore przerzucaja prawdziwe ip klienta dalej,
natomiast nie wiem jak zmusic apacza do tego aby "wstawil" to ip w naglowek http i nie robil jaj :)

ta część już działa, czytaj zanim odpowiesz ;p

w skrócie: mod_rpaf
dłuższa wersja: http://devrandom.pl/blog/2011/01/14/reverse-proxy-x-fo...Mariusz Gronczewski edytował(a) ten post dnia 16.01.11 o godzinie 21:55

Słusznie, przeczytałem "reverse proxy" + "jedno ip" i automatycznie założyłem, że chodzi o standardowy problem z adresem klienta nie wczytując się dość dokładnie.

Temat: nginx jako proxy, apache dalej i remote_addr

Swoją drogą ten sam problem przez jakiś czas rozwiązywałem "źle", mianowicie można logować IPek z X-Forwarded-For bez żadnego modułu, ale wtedy aplikacja go "nie widzi" (customowy log format umożliwia logowanie dowolnych nagłówków). W odwrotnej kolejności (nginx za czymś) jest mała pułapka bo nginx domyślnie bierze z "X-Real-IP" czy jakoś tak a nie z "X-Forwarded-For".

konto usunięte

Temat: nginx jako proxy, apache dalej i remote_addr

Aplikacja aplikacji nierówna, niektóre obsługują czasem mają świadomość że istnieją proxy i cuda jak x-forwarded-for, (np. django), i jak dostają nagłówek x-forwarded-for w requeście to używają go zamiast ip klienta.

Temat: nginx jako proxy, apache dalej i remote_addr

Taak, czasami autor aplikacji/frameworka pomyśli trochę :)

Temat: nginx jako proxy, apache dalej i remote_addr

heheh, ja też nie doczytałem (rpaf ;-) )Adam C. edytował(a) ten post dnia 17.01.11 o godzinie 21:24

Następna dyskusja:

Reverse proxy na apache. Ja...




Wyślij zaproszenie do