목차

nginx Proxy

server_names_hash_bucket_size

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

http {
    server_names_hash_bucket_size 64;
}

Tomcat 연동

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;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr; # ELB 등 중간자가 또 있을 경우에도 제대로 작동할까?

        proxy_set_header Host $host;
        proxy_read_timeout 60s; # 응답을 읽기까지의 타임아웃. send_timeout 과 함께 조정
    }
}
<!-- proxyName 과 proxyPort를 지정해야만 한다. -->
<Connector port="8080" protocol="HTTP/1.1" redirectPort="8443" />
<!-- proxy_set_header의 Host 설정으로 proxyName="www.example.com" proxyPort="80" 제외 --> 

X-Forwarded-For

Sticky Session

Upstream 헤더 내용 로그로 찍기

Keep Alive

참고