리눅스 Snippet - Nginx 가상환경(Virtual Host) 구축 및 도메인 연결

  • AWS Nginx 설치 후 django 연동을 위한 Nginx Virtual Host설정 경험을 정리합니다.

1. Nginx 설치

  • AWS에서 Amazon linux는 centOS와 비슷한 환경입니다. yum install 명령어가 가능합니다.
$ yum install nginx

2. 가상 환경 (Virtual Host 설정)

  • 많은 블로그에서 /etc/nginx/sites-available폴더를 이용한 방법을 알려주었는데, 저는 되지 않았습니다.
  • 버전이 올라가면서 설정방법이 바뀐것인지 제가 놓친 부분이 있는지는 잘 모르겠습니다.
  • Nginx 버전 : 1.12.1
$ nginx -v
nginx version: nginx/1.12.1
  • /etc/nginx/conf.d 디렉토리 안에 아무파일명.conf 파일을 생성합니다.
$ vi /etc/nginx/conf.d/아무파일명.conf
  • 아래와 같이 내용을 입력합니다.
  • proxy 설정내용은 내부에서 django를 구동하기 위한 proxy설정입니다.
    server {
          listen 80;
          listen [::]:80;
          server_name 도메인명(예: example.com);
          location / {
                          proxy_pass http://0.0.0.0:8000;
                          proxy_set_header Host $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-Host $host;
                          #proxy_set_header X-Forwarded-Server $host;
                          proxy_set_header X-Forwarded-Proto $scheme;
                  }
          }