DevOps

[nginx] nginx 프록시 설정

Xmobile 2020. 11. 17. 10:50

nginx 란 ?

www.nginx.com/resources/glossary/nginx/

NGINX 는 웹 서비스, 리버스 프록시, 캐싱,로드 밸런싱, 미디어 스트리밍 등을위한 오픈 소스 소프트웨어입니다. 
최고의 성능과 안정성을 위해 설계된 웹 서버로 시작되었습니다. 
HTTP 서버 기능 외에도 NGINX는 이메일 (IMAP, POP3 및 SMTP) 용 프록시 서버와 HTTP, TCP 및 
UDP 서버용 역방향 프록시 및로드 밸런서로도 작동 할 수 있습니다.

 

저는 nginx를 웹 프록시 서버로 접근시 톰켓 서버로 연동 되도록 설정해 보겠습니다.

자세한 내용은 하기 내용들을 참고하면 될 것 같습니다.

https://nginx.org/en/docs/beginners_guide.html

https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/#proxying-http-traffic-to-a-group-of-servers

 

1. nginx.conf 설정

nginx설치 후 nginx.conf 파일을 하기와 같이 8080으로 받으면 내부 9090포트로 전달하도록 설정하였습니다.

server {
        listen       8080;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;

        location / {
            proxy_set_header    Host $http_host;
            proxy_set_header    X-Real-IP $remote_addr;
            proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header    X-Forwarded-Proto $scheme;
            proxy_set_header    X-NginX-Proxy true;

            proxy_pass http://127.0.0.1:9090;
            proxy_redirect      off;
            charset utf-8;
         }
...

2. nginx 재 시작 

위 설정 후 nginx restart 8080으로 접근하면 정상적으로 동작하는 것을 확인하였습니다.