728x90
Ubuntu에 Nginx 설치 및 기본 설정
Nginx는 가벼우면서도 고성능을 자랑하는 웹 서버입니다. Ubuntu 환경에서 빠르게 설치하고 기본 설정을 적용하는 과정을 단계별로 정리했습니다.
1. 패키지 업데이트 및 Nginx 설치
먼저 시스템 패키지를 최신 상태로 업데이트한 뒤 Nginx를 설치합니다. 안정적인 버전의 Nginx를 기본 리포지토리에서 가져옵니다.
sudo apt update
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl status nginx
2. UFW 방화벽에서 HTTP/HTTPS 허용
UFW를 사용 중이라면 웹 서비스 포트(80, 443)를 허용해 외부 요청을 받을 수 있도록 설정합니다.
sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'
sudo ufw status verbose
3. 기본 문서 루트 확인 및 권한 설정
/var/www/html이 기본 문서 루트입니다. 프로젝트 폴더를 생성하고 소유권을 웹 서버 사용자로 변경하여 권한 문제를 예방합니다.
sudo mkdir -p /var/www/my_site/html
sudo chown -R $USER:www-data /var/www/my_site/html
sudo chmod -R 750 /var/www/my_site/html
echo "
It works!
" | sudo tee /var/www/my_site/html/index.html
4. 서버 블록(Server Block) 구성
가상 호스트와 유사한 서버 블록을 설정해 여러 사이트를 운영할 수 있습니다. example.com을 자신의 도메인으로 교체하세요.
sudo nano /etc/nginx/sites-available/example.com
# server {
# listen 80;
# server_name example.com www.example.com;
# root /var/www/my_site/html;
# index index.html index.htm;
# location / {
# try_files $uri $uri/ =404;
# }
# }
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
5. SSL 인증서(HTTPS) 설정
보안을 위해 Let’s Encrypt 무료 SSL 인증서를 적용합니다. Certbot을 이용해 자동 갱신도 함께 설정하세요.
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com
sudo systemctl status certbot.timer
마무리 및 실무 팁
설정 완료 후 정기적으로 sudo apt update && sudo apt upgrade로 패치하고, /var/log/nginx/ 로그를 통해 에러를 모니터링하세요.
실무 팁: gzip 압축, 캐시 헤더, 연결 제한(workers, connections)을 /etc/nginx/nginx.conf에 추가하면 전송 속도와 안정성을 더욱 높일 수 있습니다.

728x90
'OS > Ubuntu' 카테고리의 다른 글
| Ubuntu에서 스왑 메모리 설정하기 (3) | 2025.07.09 |
|---|---|
| Ubuntu에서 Cron 작업 설정하기 (0) | 2025.07.08 |
| Ubuntu에서 Apache 서버 설치 및 기본 설정 (0) | 2025.07.06 |
| Ubuntu에서 UFW 방화벽 설정하기 (0) | 2025.07.05 |
| Ubuntu에서 SSH 서버 설정 방법 (0) | 2025.07.04 |