[Linux] Ubuntu Nginx 설치

SANG JONG CHOI·2023년 4월 2일
0

Ubuntu 22.0.4 LTS

목록 보기
7/9

Nginx 설치

nginx란? 래픽이 많은 웹사이트의 서버(WAS)를 도와주는 비동기 이벤트 기반구조의 경량화 웹 서버 프로그램이다. 클라이언트로부터 요청을 받았을 때 요청에 맞는 정적 파일을 응답해주는 HTTP Web Server로 활용되기도 하고, 또는 Reverse Proxy Server로 활용하여 WAS의 부하를 줄일 수 있는 로드밸런서 역할을 하기도 한다.

자세한 개념 설명은 링크를 참조

1. nginx 설치

설치 전 패키지 목록 업데이트

sudo apt update
sudo apt upgrade

nginx 설치 명령어

sudo apt install nginx


계속할지 묻는 메시지가 표시되면 키보드에서 'Y'를 누르고 Enter 키를 누르면 설치 완료

# nginx 시작 
sudo systemctl start nginx

# nginx 상태 확인
sudo systemctl status nginx

2. ufw 방화벽에서 nginx 포트 열기

UFW 방화벽을 실행중인 경우 Nginx 애플리케이션 프로필을 허용해야한다.

ufw 방화벽과 관련된 3개의 Nginx 프로필이 있다.

  1. Nginx Full – This opens both port 80 & 443 (For SSL / TLS encryption).
  2. Nginx HTTP – This open only port 80 ( For unencrypted web traffic).
  3. Nginx HTTPS – Opens only port 443 (For SSL / TLS encryption).
# 방화벽 활성화
sudo ufw enable

# 원하는 프로필 허용 
sudo ufw allow 'Nginx Full'
sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'

# 방화벽 변경사항 리로드
sudo ufw reload

# 방화벽 상태 확인
sudo ufw status

3. nginx 설정 변경

Nginx 관련한 디렉토리 경로는 기본적으로 /etc/nginx이다.

기본적인 환경 설정 파일의 경로는 /etc/nginx/conf.d 디렉토리 하위의 default.conf에 있는데
혹시나 conf.d 디렉토리 아래에 기본 설정 파일이 없다면 sites-availabe이라는 디렉토리 하위에 있을 수 있다.

sudo vim /etc/nginx/nginx.conf
# nginx 중지
sudo systemctl stop nginx

# nginx 시작
sudo systemctl start nginx

# 부팅 혹은 재부팅 시 nginx 자동 시작
sudo systemctl enable nginx

# 변경 사항 적용
sudo systemctl restart nginx
# 혹은
sudo service nginx restart

# 테스트
nginx -t

테스트 통과 시 아래 화면

알아두면 좋을만한 사항들

/etc/nginx/nginx.conf: 기본 구성 파일입니다. 서버의 요구사항에 맞게 설정을 수정할 수 있습니다.
/etc/nginx/sys-available: 서버 블록 구성을 저장하는 디렉토리입니다. Nginx는 서버 블록이 사이트 사용 디렉토리에 연결된 경우에만 사용합니다.
/etc/nginx/http 지원: 디렉터리에는 이미 활성화된 사이트별 Nginx 서버 블록이 포함되어 있습니다.

conf.d : sites-enabled와 같이 nginx에 반영되는 작업들이 있지만 비활성해야 하는 경우 삭제하거나 변경해야 함
sites-enabled : 설정 파일을 복사 또는 심볼릭 링크로 걸어줌(nginx에 반영)
sites-available : 설정을 저장하는 곳(nginx에 반영 X)

Nginx 웹 서버 문제를 해결하는 데 사용할 수있는 두 가지 주요 로그 파일이 있습니다.

/var/log/nginx/access.log: 웹 서버에 대한 모든 요청이 기록됩니다.
/var/log/nginx/error.log: 오류 로그 파일이며 Nginx에서 발생하는 모든 오류를 기록합니다.

[출처] : https://computer-science-student.tistory.com/737, https://t-okk.tistory.com/154, https://ko.linux-console.net/?p=721#gsc.tab=0

profile
No error, No gain

0개의 댓글