[Linux] Nginx 설치 및 기본 설정 방법

가볍고 빠른 웹 서버로 유명한 Nginx(엔진엑스)는 정적 파일 서비스부터 리버스 프록시, 로드밸런서까지 다양한 역할을 수행할 수 있습니다.
Nginx를 리눅스 서버에 설치하고, 기본 설정 방법을 정리했습니다.

 

 

1. Nginx 설치하기

✔ Ubuntu/Debian 계열

sudo apt update
sudo apt install nginx

✔ RHEL/CentOS 계열

sudo dnf install epel-release
sudo dnf install nginx

 

 

2. Nginx 서비스 관리

Nginx 설치 후 서비스 상태를 확인하고, 필요하다면 시작하거나 재시작할 수 있습니다.

✔ 상태 확인

sudo systemctl status nginx

✔ 서비스 시작/중지/재시작

sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx

✔ 부팅 시 자동 시작 설정

sudo systemctl enable nginx

 

 

3. 방화벽에 HTTP/HTTPS 포트 열기

Nginx는 기본적으로 HTTP(80)와 HTTPS(443) 포트를 사용합니다. 방화벽을 사용 중이라면 포트를 열어야 합니다.

✔ UFW (Ubuntu)

sudo ufw allow 'Nginx Full'

✔ firewalld (CentOS/RHEL)

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

 

 

4. 기본 페이지 확인

브라우저에서 서버의 IP 주소로 접속하면 Nginx 기본 환영 페이지가 뜹니다:

http://서버_IP

이 페이지가 보이면 Nginx가 정상적으로 설치되어 실행 중이라는 의미입니다.

 

 

5. Nginx 기본 설정 파일 구조

Nginx의 주요 설정 파일은 다음 경로에 위치합니다:

  • /etc/nginx/nginx.conf – Nginx 메인 설정 파일
  • /etc/nginx/sites-available/ – 가상 호스트 설정 파일 저장 디렉토리 (Ubuntu/Debian)
  • /etc/nginx/sites-enabled/ – 활성화된 가상 호스트의 심볼릭 링크

CentOS/RHEL 계열은 /etc/nginx/conf.d/ 디렉토리에 설정 파일을 두고, 자동으로 include됩니다.

 

 

6. 기본 가상 호스트 설정 예제

새로 만든 설정 파일 예시 (/etc/nginx/sites-available/example.com):

server {
    listen 80;
    server_name example.com;

    root /var/www/example.com;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

설정을 완료한 후, Ubuntu/Debian에서는 심볼릭 링크를 만들어 활성화합니다:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

 

 

7. 설정 테스트 및 Nginx 재시작

Nginx 설정에 문법 오류가 없는지 반드시 확인하세요:

sudo nginx -t

이후 설정을 적용하려면 Nginx를 재시작합니다:

sudo systemctl restart nginx

 

 

쉽고 강력한 웹 서버 Nginx

Nginx는 간단한 설치와 설정만으로도 정적 웹 서버부터 리버스 프록시까지 폭넓게 활용할 수 있습니다.