nginx 역방향 에이전트, node 실제 IP 가 져 오기

735 단어
node 의 전단 에 nginx 를 역방향 대리 로 놓 았 습 니 다. 결과
req.ip

nginx 의 IP 를 처음부터 끝까지 가 져 옵 니 다. 클 라 이언 트 의 실제 IP 를 얻 기 위해 서 는 두 가지 일 을 해 야 합 니 다.
1. nginx 리 트 윗 설정 시 http header 추가
2. node 에서 새로 추 가 된 header 꺼 내기
nginx 설정
location /svc/ {
                proxy_pass http://192.168.1.111:8080;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

여기에 http header 3 개가 추가 되 었 는데, 그 중에서 X - Real - IP 는 실제 IP 를 대표 한다.
node 코드
var real_ip = req.get("X-Real-IP") || req.get("X-Forwarded-For") || req.ip;

좋은 웹페이지 즐겨찾기