Add install_php.sh

This commit is contained in:
2025-12-23 10:40:52 +09:00
parent ae03eeef14
commit 92c0688909

51
install_php.sh Normal file
View File

@ -0,0 +1,51 @@
#!/bin/bash
# PHP 설치 스크립트 (Rocky Linux 9)
# 현재 사용자 계정 기준으로 PHP-FPM pool 생성
# 사용법: ./install_php.sh 8.2 또는 8.4
PHP_VERSION=$1
if [[ -z "$PHP_VERSION" ]]; then
echo "사용법: $0 <PHP_VERSION> (예: 8.2 또는 8.4)"
exit 1
fi
# 현재 사용자 계정 및 홈
WEB_USER=$USER
WEB_HOME=$(eval echo "~$WEB_USER")
WEB_ROOT="$WEB_HOME/www"
echo "설치 사용자: $WEB_USER"
echo "웹 루트: $WEB_ROOT"
echo "설치 PHP 버전: $PHP_VERSION"
# Remi 저장소 설치
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm
sudo dnf module reset php -y
sudo dnf module enable php:remi-$PHP_VERSION -y
# PHP 및 필수 모듈 설치 (NTS 빌드)
sudo dnf install -y php php-cli php-fpm php-mysqlnd php-pdo php-mbstring php-xml php-gd php-curl php-opcache \
php-soap php-intl php-zip php-bcmath php-bz2 php-imagick
# PHP-FPM pool 생성 (사용자 계정 기준)
FPM_POOL="/etc/php-fpm.d/$WEB_USER.conf"
sudo bash -c "cat > $FPM_POOL" <<EOF
[$WEB_USER]
user = $WEB_USER
group = $WEB_USER
listen = /run/php-fpm/$WEB_USER.sock
listen.owner = $WEB_USER
listen.group = $WEB_USER
pm = dynamic
pm.max_children = 10
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 5
chdir = $WEB_ROOT
EOF
# PHP-FPM 서비스 활성화 및 재시작
sudo systemctl enable --now php-fpm
sudo systemctl restart php-fpm
echo "PHP $PHP_VERSION 설치 완료! PHP-FPM pool: $WEB_USER"