Web/Nginx

Nginx에 php-fpm 설치하기 for Centos7

Hannah_ko 2020. 9. 29. 13:52
SMALL

Centos 환경에서 nginx를 설치한 후

php-fpm을 설치하여 환경설정을 셋팅해보는 방법을 알아보자.

 


 

1. 먼저 php-fpm을 설치한다.

$ yum install -y php php-fpm php-mysql

이후 DB 추가 설치를 위해 php-mysql도 함께 설치해 주었다.

DB 설치가 필요 없는 사람은 php-mysql을 설치하지 않아도 된다.

 

 

2. php-fpm 설정 수정하기

$ vi /etc/php-fpm.d/php-fpm.sock

...

// 해당 부분 주석 해제 및 수정
listen = /var/run/php-fpm./php-fpm.sock
listen.owner = nginx
listen.group = nginx
user = nginx
group = nginx

 

3. php-fpm 데몬 실행

$ systemctl start php-fpm

$ systemctl enable php-fpm

$ systemctl status php-fpm
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-09-21 13:42:24 KST; 2h 13min ago
 Main PID: 2357 (php-fpm)
   Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
   CGroup: /system.slice/php-fpm.service
           ├─2357 php-fpm: master process (/etc/php-fpm.conf)
           ├─2358 php-fpm: pool www
           ├─2359 php-fpm: pool www
           ├─2360 php-fpm: pool www
           ├─2361 php-fpm: pool www
           └─2362 php-fpm: pool www

Sep 21 13:42:24 lifestyleredesign systemd[1]: Stopped The PHP FastCGI Process Manager.
Sep 21 13:42:24 lifestyleredesign systemd[1]: Starting The PHP FastCGI Process Manager...
Sep 21 13:42:24 lifestyleredesign systemd[1]: Started The PHP FastCGI Process Manager.

 

 

4. nginx conf 파일 수정하기

$ vi /etc/nginx/conf.d/default.conf

...

server {
	listen 80;
    listen [::]:80;
    server_name 127.0.0.1;
    root /var/www/html;
    index index.html index.htm index.php;
   location / {
   	proxy_pass http://127.0.0.1:3000;
    proxy_buffer_size 128k;
    proxy_buffers 4 256k;
    proxy_busy_buffers_size 256k;
   }
   location ~ \.php$ {
   	fastcgi_pass    unix:/var/run/php-fpm/php-fpm.cosk;
    fastcgi_index   info.php;
    fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include         fastcgi_params;
   }

 

 

5. nginx 테스트 후 재 실행

$ nginx -t

$ systemctl restart nginx

 

 

6. info.php 파일 생성하기

$ vi /var/www/html

<?php
  phpinfo();
?>

 

 

7. 127.0.0.1/info.php로 접속해서 출력화면 확인하기

 

info.php

 

LIST