Nginx 에이전트 의 실제 IP 해결

Nginx 사용 총화
Nginx x 2
Nginx 는 현재 비교적 유행 하 는 웹 서버 (물론 다른 일 을 할 수 있 습 니 다) 입 니 다. 저 는 Tornado 를 사용 하여 웹 응용 프로그램 을 개발 하기 시 작 했 기 때문에 이 를 사용 하기 시 작 했 습 니 다. 본 고 는 주로 제 사용 과정 에서 기록 되 었 습 니 다.
nginx 명령 용법 옵션 해석 - h 도움말 - s signal 은 메 인 스 레 드 에 신 호 를 보 내 행동 을 제어 합 니 다. signal 값 은 stop, quit, reopen, reload 사용자 및 권한 일 수 있 습 니 다.
Nginx 는 사용자 및 사용자 그룹 을 설정 할 수 있 는 user 설정 명령 이 있 습 니 다.
  :   user user [group]   : nobody nobody

예 를 들 어 제 가 개발 할 때 HOME 의 프로젝트 디 렉 터 리 를 사용 합 니 다. 제 가 nginx 를 설정 할 때 사용 하 는 사용 자 는 lijian 이기 때문에 설정 파일 (/ etc / nginx / conf / nginx. conf) 에 추가 합 니 다.
user lijian lijian;

Nginx 를 시작 하면 프로 세 스 를 볼 수 있 습 니 다.
$ ps aux|grep nginxroot      4300  0.0  0.0  36180  2036 ?        Ss   11:08   0:00 nginx: master process nginxlijian    4436  0.0  0.0  36584  2092 ?        S    11:16   0:00 nginx: worker process

어떻게 원본 IPNginx 를 전단 으로 정확하게 기록 합 니까?
이 경우 Nginx 는 실제 IP 를 한 필드 에 저장 하고 배경 프로그램 을 가 져 오 면 됩 니 다. nginx 설정 예제:
upstream ylinux_local {    server 192.168.122.48:80;}server {    listen 80;    server_name ~^(www\.)?ylinux.org$ jianlee.ylinux.org;    access_log  /opt/LuoYun/logs/ylinux.org.access.log;    location / {        proxy_read_timeout 1800;        proxy_pass_header Server;        proxy_set_header Host $http_host;        proxy_redirect off;        proxy_set_header X-Real-IP $remote_addr;        proxy_set_header X-Scheme $scheme;        proxy_pass http://ylinux_local;    }}

YLinux 의 웹 은 tornado 로 만 들 어 졌 습 니 다. X - Real - IP 기록 을 사용 할 수 있 습 니 다.
Nginx 직렬 연결
이 경우 전단 은 Nginx 이 고 백 엔 드 는 또 하나의 Nginx 이 며 응용 프로그램 을 연결 합 니 다. (더 많은 연결 이 유사 합 니 다) 전단 Nginx 설정 은 위 와 같 습 니 다. 변경 하지 않 아 도 됩 니 다. 백 엔 드 Nginx 는 real - ip module 을 사용 해 야 합 니 다.
주의: 인터넷 의 대다수 문장 과 다르다 , 본 고 는 CentOS 6.4 x86 을 측정 하 였 다.64 환경 에서 창고 에 설 치 된 nginx 는 기본 편집 을 통 해 이 모듈 을 지원 합 니 다 (다단 계 Nginx 설정 이 매우 유행 하 는 것 을 볼 수 있 습 니 다). 통과 하 십시오. nginx -V nginx 컴 파일 설정 을 보 여 주 는 명령 입 니 다. 있 으 면 --with-http_realip_module 이 nginx 가 이 용법 을 지원 하고 있 음 을 나타 내 는 옵션 입 니 다. 그렇지 않 으 면 스스로 편집 하 십시오.
백 엔 드 nginx 설정 은 다음 과 같 습 니 다:
upstream ylinux_local {    server 127.0.0.1:8888;}server {    listen 80;    server_name ~^(www\.)?ylinux.org$;    access_log  /srv/log/ylinux.org.access.log;set_real_ip_from   192.168.122.0/24;set_real_ip_from   192.168.122.1;real_ip_header     X-Real-IP;    location / {        proxy_read_timeout 1800;        proxy_pass_header Server;        proxy_set_header Host $http_host;        proxy_redirect off;        proxy_set_header X-Real-IP $remote_addr;        proxy_set_header X-Scheme $scheme;        proxy_pass http://ylinux_local;    }}    server {        listen 80;        server_name jianlee.ylinux.org;        access_log  /srv/log/jianlee.ylinux.org.access.log;        location / {            root "/srv/YLinux/jianlee/";            index index.html index.htm;        }    }

이 세 줄 이 포인트 입 니 다.
set_real_ip_from   192.168.122.0/24;set_real_ip_from   192.168.122.1;real_ip_header     X-Real-IP;

http://www.ylinux.org/forum/t/178

좋은 웹페이지 즐겨찾기