작은숲:위키노트/PHP-FPM 설정

큰숲백과, 나무를 보지 말고 큰 숲을 보라.
Utolee90 (토론 | 기여)님의 2021년 3월 28일 (일) 12:51 판 (문자열 찾아 바꾸기 - "<source" 문자열을 "<syntaxhighlight" 문자열로)

PHP 7.0설치한 후 위키노트:PHP-FPM으로 운용하기 위해 아래와 같이 설정한다.

PHP-FPM 설정

보안을 위해 php.ini 파일에서 아래 내용을 추가한다. <syntaxhighlight lang="cfg"> cgi.fix_pathinfo = 0 </source> php-fpm.conf 파일에서 아래 내용을 확인한다. <syntaxhighlight lang="cfg"> [global] pid = run/php-fpm.pid error_log = log/php-fpm.log </source> 위와 같이 설정하면 /usr/local/php70/var 디렉토리 아래에 PID 파일과 로그 파일이 만들어진다. php-fpm.d/www.conf 파일에서 아래 내용을 서버 사양에 맞게 설정한다. <syntaxhighlight lang="cfg"> [www] user = nobody group = nobody listen = /dev/shm/php7-fpm.sock listen.owner = nobody listen.group = nobody listen.mode = 0660 pm = dynamic pm.max_children = 50 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3 pm.max_requests = 500 </source> /dev/shm은 공유 메모리 영역으로 이곳에 소켓 파일을 만들어 조금이라도 처리 속도를 높인다. 유닉스 소켓을 쓰지 않고 TCP 포트를 쓰려면 아래와 같이 수정한다. <syntaxhighlight lang="cfg"> [www] user = nobody group = nobody listen = 127.0.0.1:9000 listen.allowed_clients = 127.0.0.1 pm = dynamic pm.max_children = 50 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3 pm.max_requests = 500 </source>

서비스 설정과 실행

소스를 컴파일해서 설치한 경우 서비스 스크립트 파일을 복사해서 서비스로 실행하도록 한다. <syntaxhighlight lang="console">

  1. cp /usr/local/src/php-7.0.4/sapi/fpm/init.d.php-fpm /etc/init.d/php7-fpm
  2. chmod +x /etc/init.d/php7-fpm
  3. service php7-fpm start

Starting php-fpm done

  1. ps aux | grep php | grep -v grep

root 25268 0.0 0.0 234224 6844 ? Ss 03:08 0:00 php-fpm: master process (/usr/local/php70/etc/php-fpm.conf) nobody 25269 0.0 0.0 234224 6340 ? S 03:08 0:00 php-fpm: pool www nobody 25270 0.0 0.0 234224 6340 ? S 03:08 0:00 php-fpm: pool www

  1. chkconfig php7-fpm on
  2. chkconfig --list | grep php7-fpm

php7-fpm 0:off 1:off 2:on 3:on 4:on 5:on 6:off </source>

같이 보기

이 작은숲 문서의 출처는 위키노트의 위키노트/PHP-FPM 설정 문서입니다.