Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam,
Mam 3 serwery na główny przychodzą zapytania , a on przekierowuje je na serwer 2 lub 3.
W logach serwerów mam już IP serwera 1 a nie klienta?
Serwerki są na nginx z obsługą php. Serwer 1 działa jako load balancing.
Czy można tak zrobić by do serwera 2 i 3 docierały oryginalne IP ?
Dzięki za info
Offline
A nie możesz na pierwszym serwerze zbierać zapytań dotyczących http czy kierowanych na dany serwer ?
Ostatnio edytowany przez ba10 (2013-11-22 14:12:08)
Offline
mi to tam w ogóle nie przeszkadza, ale programista chyba sobie nie radzi i dlatego szef mi tyłek zawraca:)
Myślałem, że może jakiś myk jest , który gdzieś mi umkną w konfiguracji nginx
Offline
Ja myślę, że to nie jest sprawa nginx, a raczej routingu, NATu czy jak tam masz sieć rozwiązaną.
Offline
można na maszynach 2 i 3 w nginx wpisujemy
set_real_ip_from 127.0.0.1; #Adres IP LOAD BALANCERA real_ip_header X-Forwarded-For;
Działa aż miło
Ostatnio edytowany przez redelek (2013-11-22 14:25:54)
Offline
He he fajnie się czegoś nowego dowiedzieć, dzięki :)
Offline
Ten pierwszy serwer przekazuje zapytania przez mod_proxy?
Jeśli tak, to masz możliwość ustawienia odpowiednich nagłówków, o ile nie śmigają domyślnie.
przykład:
server { listen 80; server_name your.hostname.tld root /your/root/ location / { proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8080; } }
Ustaw takie nagłówki, a potem przez np phpinfo sprawdź, czy widać je na serwerach 2 i 3.
Któryś powinien zaskoczyć jak trzeba.
A jak programista nie poradzi sobie z takimi nagłówkami, to daj ogłoszenie o pracy dla programisty. :D
Sznurki:
http://wiki.nginx.org/HttpProxyModule
http://advent.perldancer.org/2012/3
Ostatnio edytowany przez Jacekalex (2013-11-22 14:30:24)
Offline
@Jacekalex
Tak miałem ustawione jak podałes na serwerku 1 , ale w logach serwerów 2,3 jest wszystko oprócz ip klientów :( Ale to co napisałem pomogło i teraz działa niech dalej dłubie :)))
Offline
Nie w logach, żeby w logach były takie zmienne, to musisz osobno ustawić w konfiguracji logowania.
Każdy taki nagłówek możesz odczytać dowolnym skryptem php czy cgi na serwerze.
Jak potrzebujesz w logach, to chyba będzie zmienna $http_referer.
Sznurek:
http://wiki.nginx.org/HttpLogModule
Offline
Strony: 1