서버 설정 · 2 min read · Sep 30, 2025
CentOS 8에서 PHP-FPM과 함께 Nginx 설치 및 구성하는 방법

Nginx는 무료이며 오픈 소스인 세계에서 가장 강력한 웹 서버 중 하나입니다. 주로 고부하 및 고트래픽 웹사이트에 사용됩니다. Nginx는 안정성, 간단한 구성 및 낮은 자원 소비로 유명합니다. Nginx를 웹 서버 및 리버스 프록시로 사용할 수 있습니다.
FPM은 FastCGI Process Manager의 약자로, PHP의 대안 FastCGI 구현이며 고트래픽 웹사이트에 사용됩니다. PHP 페이지를 제공하기 위해 웹 서버와 함께 일반적으로 사용됩니다. PHP-FPM은 PHP를 실행하는 다른 방법에 비해 메모리와 CPU를 덜 사용합니다. PHP-FPM은 다중 사용자 PHP 환경에서 전통적인 CGI 기반 방법보다 빠릅니다. PHP-FPM은 또한 동시에 여러 버전의 PHP를 실행할 수 있게 해줍니다.
이 튜토리얼에서는 CentOS 8에서 PHP-FPM 지원과 함께 Nginx를 설치하는 방법을 배웁니다.
필수 조건
- CentOS 8이 실행되는 서버.
- 서버에 루트 비밀번호가 구성되어 있어야 합니다.
시작하기
기본적으로 SELinux는 CentOS 8 서버에서 활성화되어 있습니다. 따라서 먼저 비활성화해야 합니다.
/etc/selinux/config 파일을 편집하여 이 작업을 수행할 수 있습니다:
nano /etc/selinux/config다음과 같이 변경합니다:
SELINUX=disabled파일을 저장하고 닫습니다. 그런 다음 변경 사항을 적용하기 위해 서버를 재시작합니다.
Nginx 웹 서버 설치
먼저 다음 명령어로 Nginx 웹 서버를 설치합니다:
yum install nginx -yNginx가 설치되면, 다음 명령어로 Nginx 서비스를 시작하고 부팅 시 자동으로 시작되도록 활성화합니다:
systemctl start nginx
systemctl enable nginx작업이 완료되면 다음 단계로 진행할 수 있습니다.
PHP 및 PHP-FPM 설치
다음으로, 다음 명령어를 실행하여 PHP 및 PHP-FPM을 설치합니다:
yum install php php-cli php-common php-fpm -y모든 패키지가 설치되면, PHP-FPM 서비스를 시작하고 시스템 재부팅 후 자동으로 시작되도록 활성화합니다:
systemctl start php-fpm
systemctl enable php-fpm다음 명령어로 PHP-FPM 서비스의 상태를 확인할 수도 있습니다:
systemctl status php-fpm다음과 같은 출력이 표시되어야 합니다:
? php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Thu 2019-10-17 05:39:11 EDT; 4min 40s ago
Main PID: 1475 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
Tasks: 6 (limit: 5060)
Memory: 28.5M
CGroup: /system.slice/php-fpm.service
??1475 php-fpm: master process (/etc/php-fpm.conf)
??1478 php-fpm: pool www
??1479 php-fpm: pool www
??1480 php-fpm: pool www
??1481 php-fpm: pool www
??1482 php-fpm: pool www
Oct 17 05:39:10 centos8 systemd[1]: Starting The PHP FastCGI Process Manager...
Oct 17 05:39:11 centos8 systemd[1]: Started The PHP FastCGI Process Manager.
Nginx용 인덱스 페이지 만들기
다음으로, Nginx가 PHP-FPM을 사용하는지 테스트하기 위해 샘플 info.php 페이지를 만들어야 합니다.
다음과 같이 Nginx 기본 문서 루트 디렉토리 내에 info.php를 생성할 수 있습니다:
nano /var/www/html/info.php다음 줄을 추가합니다:
작업이 완료되면 파일을 저장하고 닫습니다.
다음으로, info.php 파일의 소유권을 nginx로 변경합니다:
chown -R nginx: /var/www/html/info.php/PHP-FPM과 함께 Nginx 구성
다음으로, Nginx 가상 호스트 구성 파일을 생성하고 PHP-FPM 지원을 활성화해야 합니다.
다음 명령어로 생성할 수 있습니다:
nano /etc/nginx/conf.d/example.conf다음 줄을 추가합니다:
server {
listen 80;
server_name example.com;
root /var/www/html/;
index info.php;
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}파일을 저장하고 닫습니다. 그런 다음 다음 명령어로 Nginx의 구문 오류를 테스트합니다:
ginx -t다음으로, Nginx 가상 호스트 파일을 활성화하고 Nginx 서비스를 재시작하여 구성을 적용합니다:
systemctl restart nginxPHP-FPM 지원으로 Nginx 테스트
이제 웹 브라우저를 열고 URL http://example.com을 입력합니다. 다음 페이지로 리디렉션됩니다:


위 페이지에서 PHP-FPM이 Nginx 웹 서버와 함께 로드된 것을 확인할 수 있어야 합니다.
결론
축하합니다! CentOS 8 서버에 PHP-FPM 지원과 함께 Nginx를 성공적으로 설치했습니다. 이제 PHP-FPM을 사용하여 서로 다른 버전의 PHP를 사용하는 여러 웹사이트를 호스팅할 수 있습니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.