[Ubuntu] Nginx에서 PHP 7.0을 PHP 5.6 버전으로 다운그레이드하는 방법

아래 내용은 "[Vultr] Ubuntu에 PHP 7.0/PHP 7.1과 워드프레스를 설치하는 방법"에 이어지는 글입니다.

이전 글에서는 Vultr를 기준으로 Ubuntu에 Nginx와 PHP 7.0/7.1을 설치하는 방법에 대해 살펴보았습니다. 만약 PHP 7.0에서 PHP 5.6으로 다운그레이드해야 하는 경우 아래의 방법으로 다운그레이드할 수 있습니다.

참고로 Apache의 경우 How can I downgrade from PHP 7 to PHP 5.6 on Ubuntu 16.04? 글의 설명에 따라 다운그레이드가 가능할 것 같습니다. 방법은 비슷하지만 Nginx의 경우 Apache와 관련된 부분을 Nginx에 맞게 변경하면 제대로 작동할 것입니다.

PHP 7에서 PHP 5.6으로 다운그레이드하는 방법[Nginx]

add-apt-repository를 설치합니다.

# sudo apt-get install python-software-properties

PHP 5.6의 repository를 추가합니다.

# sudo add-apt-repository -y ppa:ondrej/php

패키지 목록을 업데이트합니다.

sudo apt-get update

php5-fpm를 설치합니다.

# sudo apt-get install php5.6-fpm

결과를 확인합니다.

# php -v
PHP 7.0.18-0ubuntu0.16.10.1 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.18-0ubuntu0.16.10.1, Copyright (c) 1999-2017, by Zend Technologies

다음 명령을 실행합니다.

# sudo mv /usr/bin/php /usr/bin/php7
# sudo mv /usr/bin/php5.6 /usr/bin/php

다시 PHP 버전을 체크합니다.

# php -v
PHP 5.6.31-1~ubuntu16.04.1+deb.sury.org+1 (cli)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
with Xdebug v2.5.5, Copyright (c) 2002-2017, by Derick Rethans

버전이 제대로 안 바뀌면 다음 명령을 실행하면 PHP 5.6으로 변경될 것입니다.

sudo update-alternatives --set php /usr/bin/php5.6

nginx 구성 파일에서 다음 라인을 수정합니다.

fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

이 라인을 다음 라인으로 변경합니다.

fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;

php5.6-fpm.sock의 경로가 이와 다를 경우 직접 확인하여 경로를 수정하시기 바랍니다. 변경사항을 적용하기 위해 Nginx를 재시작합니다.

sudo systemctl restart nginx.service php5.6-fpm.service

php.ini 파일의 위치(예: /etc/php/5.6/fpm/php.ini)를 찾아서 몇 가지 값을 수정해줍니다(이전 글의 PHP 7.0 설치/구성 부분 참고). php.ini 파일의 위치는 info.php 파일을 하나 만들어 워드프레스가 설치된 폴더의 올려서 확인해볼 수 있습니다.

[Ubuntu] Nginx에서 PHP 7.0을 PHP 5.6 버전으로 다운그레이드하는 방법 2

참고할 만한 문서:

일부 글에 제휴 링크가 포함될 수 있으며 파트너스 활동으로 일정액의 수수료를 받을 수 있습니다.

댓글 남기기

* 이메일 정보는 공개되지 않습니다.