2. nginx 설치 및 설정 (Ubuntu 18.04 LTS)

BYJIYE·2020년 12월 3일
3

Ubuntu

목록 보기
2/4
post-thumbnail

nginx란?
웹 서버 소프트웨어로, 가벼움과 높은 성능을 목표로 한다. 웹 서버, 리버스 프록시 및 메일 프록시 기능을 가진다.

2. nginx 설치 및 설정

2-1 nginx 설치

$ sudo apt-get install nginx

2-2 nginx 서버 블록 설정

nginx 설정 파일 수정

$ sudo vi /etc/nginx/nginx.conf

http {} 블록 끝에 구문 추가

include /etc/nginx/sites-enabled/*.conf; // sites-enabled 디렉토리에서 서버 블록을 찾도록 지시
server_names_hash_bucket_size 64; // 도메인이름 분석하는데 할당되는 메모리 양

2-3 서버 블록 파일 만들기

방법 참고 사이트

$ sudo vi /etc/nginx/sites-available/도메인이름(프로토콜 제외).conf

/etc/nginx/sites-available/도메인이름(프로토콜 제외).conf 아래 내용 입력

server {
  listen  80;
  server_name 도메인이름;

  location / {
    root  /var/www/html; //vsftpd 홈디렉토리
    index  index.html index.htm index.nginx-debian.html;
    try_files $uri $uri/ =404; 
  }

  error_page  500 502 503 504  /50x.html;
  location = /50x.html {
    root  /usr/share/nginx/html;
  }
}

React build 배포 시

server {
  listen 80;
  listen [::]:80;
  root /var/www;
  index index.html index.htm index.nginx-debian.html;
  server_name site.com;
  location / {
    try_files $uri $uri/ @rewrites;
  }
  location @rewrites {
    rewrite ^(.+)$ /index.html last;
  }
}

서버 블록 파일 활성화

sudo ln -s /etc/nginx/sites-available/도메인.conf /etc/nginx/sites-enabled/도메인.conf

2-4 nginx 명령어 정리

nginx 재시작

$ sudo systemctl restart nginx

nginx log 확인

$ sudo ls /var/log/nginx // access.log error.log
$ sudo tail -f /var/log/nginx/access.log
profile
프론트엔드가 되기 위해 그냥 닥치는 대로 배우고 써보는 4년차 퍼블리셔

1개의 댓글

comment-user-thumbnail
2021년 8월 2일

server_name 을 꼭 도메인으로 해야되나요? 임의로 지정하면 어떻게 되나요??

답글 달기