Rocky Linux 9 에서 웹서버 없이 PHP 8.2 및 PHP-FPM 설치하기
PHP-FPM (FastCGI Process Manager) 은 PHP FastCGI 의 대안으로 트래픽이 많은 웹 사이트의 경우 php-fpm 풀 관리를 사용하여 웹 사이트의 성능 부하를 개선할 수 있습니다.
PHP 는 보통 웹서버와 같이 설치되지만, 서버 로컬에서만 PHP 코드를 실행할때, 굳이 Apache 나 Nginx 는 설치할 필요가 없습니다.
여기에서는 Rocky Linux 9 환경에서 웹서버 없이 PHP 8.2 및 PHP-FPM 를 설치하는 방법을 기술하고 있습니다.
1. PHP 설치
PHP-FPM 을 사용하려면 먼저 PHP 가 시스템에 설치되어 있어야 합니다.
환경을 업데이트 하고 Epel 리포지토리를 추가합니다.
# dnf -y update
# dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
Remi 리포지토리를 추가합니다.
# dnf -y install http://rpms.remirepo.net/enterprise/remi-release-9.rpm
기본 PHP 모듈을 재설정합니다.
# dnf -y module reset php
사용 가능한 PHP 모듈을 확인합니다.
여기에서 설치 가능한 PHP 버전이 확인됩니다.
# dnf module list php
PHP 패키지의 기본 설치 버전을 Remi repository PHP 8.2 로 변경합니다.
# dnf -y module enable php:remi-8.2
PHP 를 설치합니다.
# dnf -y install php
설치된 PHP 버전을 확인합니다.
# php -v
PHP 8.2.15 (cli) (built: Jan 16 2024 12:19:32) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.2.15, Copyright (c) Zend Technologies
with Zend OPcache v8.2.15, Copyright (c), by Zend Technologies
2. PHP-FPM 설치
위와 같이 진행했을 경우, 출력된 내용을 살펴보면 php 관련 패키지가 몇가지 자동으로 설치되는데, php-fpm 까지 포함되어져 있습니다.
php
php-cli
php-common
php-fpm
php-mbstring
php-opcache
php-pdo
php-sodium
php-xml
php-fpm 이 설치되었는지 확인합니다.
# rpm -qa |grep php-fpm
php-fpm-8.2.15-1.el9.remi.x86_64
php-fpm 설치가 되지 않았을 경우 아래와 같이 설치합니다.
# dnf -y install php-fpm
설치된 PHP-FPM 버전을 확인합니다.
# php-fpm -v
PHP 8.2.15 (fpm-fcgi) (built: Jan 16 2024 12:19:32)
Copyright (c) The PHP Group
Zend Engine v4.2.15, Copyright (c) Zend Technologies
with Zend OPcache v8.2.15, Copyright (c), by Zend Technologies
설치된 php-fpm 서비스를 시작하고 부팅할 때마다 자동으로 실행되도록 설정합니다.
# systemctl enable --now php-fpm
3. PHP 확장 모듈 설치
응용 프로그램을 위한 추가 PHP 모듈을 설치할 수 있습니다.
간단히 패키지 설치하듯 (dnf -y install php-curl) 설치가 가능하며, 여러개의 모듈을 설치할때는 아래와 같이 사용할 수 있습니다.
# dnf -y install php-{bcmath,gd,imap,intl,mysqlnd,pear,pecl-zip,process}
설치된 모듈 리스트를 확인합니다.
# php -m
'리눅스 > PHP' 카테고리의 다른 글
PHP 8.0 에서 SCREWIM 을 이용한 소스 암호화 (0) | 2021.12.28 |
---|---|
PHP - cUrl를 이용해 PUT, POST, GET으로 json을 전달하는 방법 (0) | 2021.10.22 |
CentOS 7 에서 PHP 8.0 설치하기 (0) | 2021.10.19 |
php 5.2.17 소스 컴파일시 오류 (node.c: In function 'dom_canonicalization') (0) | 2019.02.13 |
php 7 에서 mysqli 추가시 오류 (0) | 2018.07.15 |