사용자 도구

사이트 도구


nginx:proxy

문서의 이전 판입니다!


nginx Proxy

server_names_hash_bucket_size

서버를 많이 추가할 경우 server_names_hash_bucket_size 관련 오류가 발생할 수 있다. 이때는 해당 값을 늘려준다.

http {
    server_names_hash_bucket_size 64;
}

Tomcat 연동

  • 로컬의 /example 컨텍스트를 www.example.com으로 연동하고자 할 때 다음과 같이 선언한다.
server {
    server_name www.example.com;

    location / {
        proxy_pass http://localhost:8000/example/;
        proxy_redirect http://www.example.com/example/ http://www.example.com/;
        proxy_cookie_path /example /;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
<!-- proxyName 과 proxyPort를 지정해야만 한다. -->
<Connector proxyName="www.example.com" proxyPort="80" port="8080" protocol="HTTP/1.1" redirectPort="8443" />
  • retry 설정은 Upstream 모듈을 사용한다. TODO

X-Forwarded-For

  • L7 연동하고, ProxyPass를 사용하는 경우 L7과 웹 서버를 거치는 IP 주소를 X-Forwarded-For 헤더에 저장해야하며, 이를 통해 해당 헤더의 첫번째 값으로 요청을 보낸 클라이언트의 IP 주소를 알 수 있다.
  • Apache는 ProxyPass를 사용할 경우 기본으로 X-Forwarded-For 헤더를 구성하지만 nginx는 직접 구성해줘야 한다.
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

Sticky Session

nginx/proxy.1352773338.txt.gz · 마지막으로 수정됨: 2012/11/13 11:22 저자 kwon37xi