nginx 4

ec2 혹은 서버에 애플리케이션 서버를 https로 띄워야할 때

가끔 프론트 애플리케이션을 https 페이지에서 테스트하게 될 때가 있는데, https 페이지에선 보안상의 이유로 https 통신을 지원하지 않는 api 서버에 요청을 보낼 수 없다. 따라서 애플리케이션 서버를 https 지원되는 서버에 띄워서.. https 웹서버로 요청을 받은 다음, 특정 포트에 임시로 띄워놓은 서버 애플리케이션으로 리다이렉트를 해줘야 한다. 더 나은 방법이 있을 수 있지만, 내가 주로 쓰는 방법은 다음과 같다. 애플리케이션 서버가 EC2에서 동작할 때 (ex. express application running on port 8080) 다음과 같은 순서로 작업을 진행... ec2에 nginx 설치 route53을 통해 도메인 연결 (없으면 가비아에서 구매) 도메인 연결 후 certbo..

http&server 2021.05.30

05. docker-compose 환경에서 임시 nginx proxy 구성하기

docker-compose로 서버 애플리케이션을 작성할 때, 테스트 목적 혹은 임시로 nginx를 띄워 proxy시켜야할 경우가 있다. host os에 직접 nginx를 설치시켜 세팅해도 되지만, nginx가 설치 되어있지 않는 경우엔 굳이 임시 용도로 설치 및 세팅해야하는 번거로움이 있다. nginx 를 docker 이미지로 가져와 conf 파일을 이용하면 간편하게 구성이 가능하다. 직접 docker로 실행할 수도 있지만, docker-compose로 실행하는 것이 더 간편하니까... 아래와 같은 예시를 공유해 본다. 루트 폴더명이 example/ 일 때를 가정 중요한 것은 proxy 부분.. (nginx의 80번을 통해 worker 서비스의 22222번으로 우회시켜 주고 싶은 상황) example/d..

docker 2020.10.21

04. Nginx 기초 사용법 정리 2 (location, proxy, cache)

글이 좀 길어져서 나누어 보았다. 앞 글에선 nginx의 conf에 대한 기본적인 설명과 동작 방식에 대해서 정리했다. 이 글에선 location 지시어의 좀 더 구체적인 사용법 및 가상 호스트, 서브 도메인, 프록시 서버에 대한 정리를 해보자. location directive 사용법 로케이션 지시어는 서버 블락 안에서 URI 매칭을 해준다. regex도 지원한다. server { location / { root /data/www; } location /images/ { root /data; } } URI 가 /와 매칭된다면, root에 명시된 주소와 URI를 합친다. 만약, 매칭 후보가 여럿이라면 '가장 긴 prefix'에 해당하는 주소를 고른다. /images/로 시작하는 URI라면 서버는 /dat..

http&server 2020.07.29

03. Nginx 기초 사용법 정리 1 (conf, directives)

nginx의 매우 기본적인 부분에 대해서 정리한다. 이 전에 문서를 보고 번역 & 정리해 놓은 자료를 다시 한 번 정리한다. 'nginx를 사용할 줄 안다' 함은 결국 'conf 파일을 설정/이해할 줄 안다'로 귀결되는 듯 하다. 겁 먹을 필요 없이, 그냥 읽고 해석하고 고칠 줄만 알면 된다. Nginx의 특징 엔진엑스는 Reactor 패턴을 따른다. 하나는 이벤트를 받아 전달해주는 리액터, 다른 하나는 리액터가 보낸 이벤트를 실제로 받아 처리하는 핸들러 즉 하나의 마스터 프로세스가 있어서, config 및 worker를 관리하고 여러 워커 프로세스가 있어서 실제 요청을 처리하는 느낌이다. 기본적으로는 싱글 쓰레드를 이용해서 몇 천개의 커넥션도 효율적으로 관리가 가능하다. (필요에 따라 fork를 써서 ..

http&server 2020.07.29