반응형
리눅스 공부를 하면서 가장 기본적으로 많이 이용하는 APM 환경을 직접 설치해보면서 이것저것 해보는데
한 서버상에서 php를 여러 버전 설치하고 각 사용자가 웹호스팅을 할때 필요한 php 버전을 골라서 사용할수있도록 환경을 만들어 보고싶었다.
우선 나는 리눅스는 우분투 환경을 사용하고있고 윈도우상에서 VirualBox로 가상환경을 만들어서 진행했다.
PHP를 한번에 여러버전을 설치하고 관리하기위해서
ondrej/php 라는 ppa를 이용했다.
리눅스에서는 PersonalPackageArchive라는게 있는데 간단하게정리하면
개인이 배포하는 소프트웨어가 저장된 저장소라고 생각할수있을것같다.
ondrej/php가 여러버전의 php버전을 제공하는 유명한 ppa라고 되어있어서 이용했다.
PPA설치
sudo apt-get update
sudo apt-get install software-properties-common #ppa를 이용하기 위해설치
sudo add-apt-repository ppa:ondrej/php #다양한 버전의 php를 제공하는 ppa
sudo apt-get update
php 설치
sudo apt-get install php7.4 php7.4-fpm php7.4-mysql php7.4-curl php7.4-xml php7.4-gd php7.4-mbstring
sudo apt-get install php8.0 php8.0-fpm php8.0-mysql php8.0-curl php8.0-xml php8.0-gd php8.0-mbstring
sudo apt-get install php8.2 php8.2-fpm php8.2-mysql php8.2-curl php8.2-xml php8.2-gd php8.2-mbstring
이렇게 세가지 버전의 php를 라이브러리까지 해서 설치할수있다.
설치후에 루트경로에서 run/php 경로에들어가면 설치된 php의 sock파일과 pid파일을 볼수있다.
cd /run/php
ls -al
합계 12
drwxr-xr-x 2 www-data www-data 180 11월 3 16:07 ./
drwxr-xr-x 38 root root 1000 11월 3 16:12 ../
lrwxrwxrwx 1 root root 30 11월 3 16:04 php-fpm.sock -> /etc/alternatives/php-fpm.sock=
-rw-r--r-- 1 root root 5 11월 3 16:05 php7.4-fpm.pid
srw-rw---- 1 www-data www-data 0 11월 3 16:05 php7.4-fpm.sock=
-rw-r--r-- 1 root root 5 11월 3 16:06 php8.0-fpm.pid
srw-rw---- 1 www-data www-data 0 11월 3 16:06 php8.0-fpm.sock=
-rw-r--r-- 1 root root 5 11월 3 16:07 php8.2-fpm.pid
srw-rw---- 1 www-data www-data 0 11월 3 16:07 php8.2-fpm.sock=
이렇게 하면 한개의 서버에 여러 버전의 php를 설치할수있다.
반응형