nginx 설치

1) 다운받기 - http://nginx.org/en/download.html 이동 후 원하는 버전으로 다운

2) 경로는 그냥 원하는 곳으로 해도 상관없으나 나는 C:\Program Files에 저장함.

권한 문제가 생기면 일단 다른곳에 압축이랑 다 풀어놓은 후 옮겨도 됨.

nginx 추가 설정(로드밸런싱)

nginx.exe를 실행하게 되면 기본적으로 80포트로 뜨게 되어있다. nginx폴더에 conf로 들어가서 nginx.conf파일을 열어 수정한다.

변경할 부분은 http{ … } 부분이다. http 밑으로 server { ... }이 부분에서 listen을 자신이 원하는 포트로 바꾸어 준다.

http {
    ....
    server {
        listen       9999; #난 9999포트로 놓았다.
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }
        ......
    }
}

그런 다음 server { … } 바깥 부분에 upstream [원하는 이름]{ … }을 다음과 같이 입력해주길 바란다. 업스트림에는 요청이 몇 분동안 몇 번 요청에 대해 실패했을 때 서버가 죽은 것으로 간주한다 등의 추가적인 설정들이 있다. 필요하다면 아래를 참고하여 작성한다. https://nginx.org/en/docs/http/ngx_http_upstream_module.html

http {
    ....
    upstream frontserver {
		server 127.0.0.1:8080;
		server 127.0.0.1:8081;
	}
    server {
        listen       9999; #난 9999포트로 놓았다.
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }
        ......
    }
}

마지막으로 이제 location{ … }을 바꾸어 줄텐데 location 안쪽의 내용을 지우고 다음과 같이 추가한다.

location / {
	proxy_pass http://frontserver;
}

이 뜻은 요청을 하였을 때, upstream에서 적어둔 서버로 프록시하겠다는 것이다. 예로

*.do 와 같은 형식의 요청을 따로 proxy할 것이라면 아래와 같이 설정하면 된다는 것이다.

location ~\.do$ {
    proxy_pass http://[다른 upstream];
}

이제 설정이 잘되었는지 확인할 차례이다. 설정을 저장한 후 nginx 폴더에서 nginx.exe를 실행해보도록 한다.

그리고 브라우저에서 localhost:[아까설정한포트번호]로 들어가 제대로 동작하는지 확인한다.

아 그리고 nginx종료는 cmdnginx -s stop 으로 종료 가능하다.