가이드

운영 가이드 06. Nginx + PHP-FPM 웹서버 구성

Ubuntu 24.04에서 Nginx와 PHP 8.3 FPM을 설치하고, 사이트별 server block과 PHP 처리 규칙을 연결하는 기본 운영 구성을 정리했습니다.

우분투 관리자 2026.05.03 조회 356

Nginx + PHP-FPM은 정적 파일 처리와 reverse proxy 구성이 유연하고, 최근 PHP 서비스 운영에서 가장 자주 쓰는 조합입니다.

Ubuntu 24.04 기준으로 PHP 8.3 FPM과 함께 사이트별 설정을 분리하는 방식이 가장 관리하기 편합니다.

Apache와 포트 충돌 먼저 확인

Apache를 쓰지 않을 서버라면 먼저 멈춰 두어야 Nginx가 80번과 443번 포트를 정상 점유합니다.

sudo systemctl status apache2
sudo systemctl stop apache2
sudo systemctl disable apache2

Nginx와 PHP-FPM 설치

sudo apt update
sudo apt install -y \
  nginx \
  php-fpm \
  php8.3-fpm \
  php8.3-cli \
  php8.3-common \
  php8.3-mysql \
  php8.3-mbstring \
  php8.3-xml \
  php8.3-curl \
  php8.3-zip \
  php8.3-gd \
  php8.3-bcmath \
  php8.3-intl
sudo systemctl enable --now nginx php8.3-fpm
sudo systemctl status nginx
sudo systemctl status php8.3-fpm

기본 사이트 설정 예시

아래 예시는 `/var/www/html/site/public` 을 웹 루트로 쓰는 전형적인 PHP 프로젝트 기준입니다.

sudo nano /etc/nginx/sites-available/site.conf
server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/html/site/public;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }
}
sudo ln -s /etc/nginx/sites-available/site.conf /etc/nginx/sites-enabled/site.conf
sudo nginx -t
sudo systemctl reload nginx

PHP 동작 확인

echo '<?php phpinfo();' | sudo tee /var/www/html/site/public/info.php
curl -I http://127.0.0.1/info.php
sudo rm /var/www/html/site/public/info.php

운영 중 자주 보는 명령

sudo nginx -t
sudo ss -tulpn | egrep ':80|:443'
journalctl -u nginx -n 50 --no-pager
journalctl -u php8.3-fpm -n 50 --no-pager

마무리 메모

Nginx가 정상이라면 다음으로는 MariaDB 계정 분리와 phpMyAdmin 연결, HTTPS 적용 순서로 넘어가면 됩니다.

실제 도메인이 붙기 전에는 `curl -I`와 `nginx -t` 검증 습관만 잘 들여도 장애를 많이 줄일 수 있습니다.