이번에는 웹 서버중 하나인 Nginx 를 설치하고 Nginx를 통해 pybo에 접속할 수 있도록 설정해본다.

 

1. Nginx 설치

 MobaXterm 으로 AWS 서버에 접속하여 가상환경에 진입, 아래 명령어를 실행하여 관리자 권한으로 Nginx를 설치하자

 

sudo apt install nginx

 

정상적으로 설치되는 것을 확인할 수 있다.  중간에 선택지가 나올 경우 y(yes)를 선택해준다.

 

 

2. Nginx 설정

cd /etc/nginx/sites-avilable
sudo vi mysite

 

 

/etc/nignx/sites-available 디렉토리로 이동하여 mysite 라는 설정 파일을 위와 같이 관리자 권한으로 작성해준다. 

 

listen 80 은 웹 서버를 80 포트로 서비스한다는 의미이다.  HTTP 프로토콜의 기본포트가 80이기 때문에 이렇게 해두면

앞으로는 서버에 접속할 때 :8000 과 같은 포트번호를 생략할 수 있다.

 

server_name 은 서버의 고정 IP이다.

 

location /static 은 정적파일에 대한 설정으로, /static 으로 시작되는 url 요청에 대해 지정된 디렉토리에서 파일을 읽어

처리하도록 하는 설정이다.

 

location / 은 location /static 에서 설정한 것 이외의 모든 요청은 Gunicorn 이 처리하도록 하는 설정이다.

proxy_pass 는 Gunicorn 의 유닉스 소켓 경로이다.

 

 

cd /etc/nginx/sites-enabled
sudo rm default
sudo ln -s /etc/nginx/sites-available/mysite

 

이번에는 /etc/nginx/sites/sites-enabled 로 이동한다.  이 디렉토리는 활성화하려는 설정 파일을 링크로 관리하는

디렉토리이다.  기존의 default 링크를 관리자 권한으로 삭제하고 마찬가지로 관리자 권한을 사용하여 위에서 작성한

/etc/nginx/sites-available/mysite 설정파일의 심볼릭 링크를 생성한다. 

 

 

3. Nginx 실행

이제 변경된 설정을 적용하기 위해 Nginx를 다시 실행해야한다. 

 

sudo systemctl restart nginx

 

이제 Nginx 와 Gunicorn 모두 설정이 완료되었다.

 

브라우저에서 포트번호 없이 고정ip만으로 접속해보면 pybo가 정상적으로 작동하는 것을 볼 수 있다.

 

 

4. Nginx 오류 확인

Nginx 의 설정 파일에 오류가 있는지 확인하려면 다음 명령을 실행하면 된다.

sudo nginx -t

 

위의 경우 설정파일에 문제가 없기에 정상적으로 작동하지만 만약 설정 파일에 오류가 있다면 명령어 실행결과

오류가 발생하고 서버가 정상적으로 실행되지 않을 것이다.

'개인 프로젝트 > Django-mysite' 카테고리의 다른 글

#36 DEBUG  (0) 2021.10.15
#35 서버 관리자  (0) 2021.10.15
#33 Gunicorn  (0) 2021.10.15
#32 WSGI  (0) 2021.10.15
#31 터미널 접속  (0) 2021.10.14

+ Recent posts