Ubuntu 서버에서 여러 PHP 버전 실행 방법

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발

대상자

PHP 개발자 및 시스템 관리자

  • Ubuntu 서버에서 PHP 버전 관리 및 환경 설정에 관심 있는 중급 이상 개발자*

핵심 요약

  • PHP 7.4 및 8.0 버전 동시 설치 가능 (sudo apt install php7.4 php8.0)
  • Apache/Nginx 설정에서 PHP-FPM 소켓 경로 지정 필수 (php7.4-fpm.sock 또는 php8.0-fpm.sock)
  • 명령어 기반 버전 전환 (sudo update-alternatives --set php /usr/bin/php7.4)

섹션별 세부 요약

1. 패키지 및 PPA 설정

  • software-properties-common 설치 후 ondrej/php PPA 추가
  • sudo apt update로 패키지 목록 갱신
  • PPA 추가 후 php7.4, php8.0 버전 설치 가능

2. PHP 버전 설치 및 확장 모듈

  • php7.4-mysql, php8.0-mbstring 등 필수 모듈 설치
  • 각 버전별로 php7.4-cli, php8.0-fpm 등 기본 패키지 설치 권장

3. Apache 설정 변경

  • 기존 PHP 모듈 비활성화 (sudo a2dismod php7.x)
  • 원하는 버전 활성화 (sudo a2enmod php7.4) 후 Apache 재시작
  • fastcgi_pass 지시문에서 php7.4-fpm.sock 또는 php8.0-fpm.sock 선택

4. Nginx 설정 및 서비스 재시작

  • server 블록 내 fastcgi_pass 경로 수정
  • Nginx 재시작 (sudo systemctl restart nginx) 후 설정 적용

5. 명령어 기반 버전 전환

  • update-alternatives 명령어로 PHP 실행 파일 경로 변경
  • php -v 명령어로 설치된 버전 확인 가능

결론

  • ondrej/php PPA 사용이 필수 (sudo add-apt-repository ppa:ondrej/php)
  • 서버 블록 설정 시 fastcgi_pass 경로 정확하게 지정
  • update-alternatives 명령어로 빠르게 버전 전환 가능