피카부 RSS 태그 관리 글쓰기 방명록 다시 시작하는 개발 블로그
2016-07-18 00:27:27

CentOS 7의 표준 yum리포지터리에서는 PHP 5.4가 제공되고 있지만 최신 미디어위키나 워드프레스 등의 최신 CMS를 구축할 때는 더 새로운 버전의 PHP 요구하는 경우가 있다. 이 글에서는 CentOS 7에 PHP 5.6을 yum으로 설치하는 방법에 대해서 설명한다.


Remi를 활용하자.

위에서 설명했듯이 CentOS 7의 표준 리포지토리에서는 PHP 5.6이 제공되지 않는다. 그러나 RedHat계열 Linux에 PHP의 최신 버전을 제공하는 것을 목표로하는 Remi라는 프로젝트의 리포지토리를 이용하면 yum에서 최신 PHP를 설치할 수 있다.


Remi리포지토리 추가

먼저 Remi의 yum 리포지토리를 추가해야 한다. (root권한을 가진 사용자 필요) Remi에서 제공되고 있는 소프트웨어를 설치하려면 EPEL의 리포지토리도 필수 요건이므로, EPEL의 리포지토리를 추가 한 뒤에 Remi의 리포지토리를 추가한다.

EPEL리포지토리 추가라고는 하지만 EPEL의 리포지토리 정보는 CentOS 7의 표준 yum 리포지토리에서 제공되어 있으므로 다음의 yum instal l명령으로 설치할 수 있다.

# yum -y install epel-release


EPEL의 리포지토리 정보가 설치되면, 다음은 Remi의 리포지토리 정보를 인스톨 한다. EPEL의 리포지토리 정보는 yum으로 설치했지만 Remi의 리포지토리 정보는 리포지토리 정보 파일을 직접 다운로드 해야 한다. yum의 리포지토리는 다음 디렉토리 /etc/yum.repos.d에서 repo파일을 다운로드 한다.


# cd /etc/yum.repos.d 

# wget http://rpms.famillecollet.com/enterprise/remi.repo


다운로드가 완료되면 Remi 리포지토리 인스톨도 완료다.


PHP 5.6 인스톨

Remi 리포지토리에서 PHP 5.6을 설치할 준비가 갖추어졌으니 PHP 5.6을 설치해보자.

단 Remi 리포지토리는 일반적인 yum명령으로 검색 대상이 되지 않도록 설정되어 있으므로 Remi 리포지토리를 사용할 때는 yum 명령 옵션에 –enablerepo 옵션을 주어야 한다. PHP 5.6을 설치할 경우 remi와 remi-php56을 지정한다.

Apache httpd+PHP 5.6의 조합으로 설치

PHP는 WEB 서버에서 대부분 사용되므로 Apache httpd와 같이 PHP 5.6을 설치해보자. 다음과 같이 httpd와 php를 yum으로 설치한다.

# yum -y --enablerepo=remi,remi-php56 install httpd php php-common
 
===============================================================
 Package                 Arch            Version                      Repository           Size
===============================================================
Installing:
 httpd                   x86_64          2.4.6-31.el7.centos          base                2.7 M
 php                     x86_64          5.6.10-1.el7.remi            remi-php56          2.6 M
 php-common              x86_64          5.6.10-1.el7.remi            remi-php56          1.1 M
Installing for dependencies:
 httpd-tools             x86_64          2.4.6-31.el7.centos          base                 79 k
 mailcap                 noarch          2.1.41-2.el7                 base                 31 k
 php-cli                 x86_64          5.6.10-1.el7.remi            remi-php56          4.0 M
 php-pecl-jsonc          x86_64          1.3.7-1.el7.remi.5.6         remi-php56           52 k
 php-pecl-zip            x86_64          1.12.5-1.el7.remi.5.6        remi-php56           90 k

설치가 완료되면 Apache httpd를 서버 재시작시 자동 시작 되도록 한다.

# systemctl enable httpd.service

 

그런후 apache를 재시작한다.

# systemctl start httpd.service

PHP 5.6이 제대로 설치되었는지를 확인하기 위해서 phpinfo 함수를 다음 PHP파일로 만들어 접속해보자.

# vi /var/www/html/info.php

<?php

phpinfo();

?>

이제 지금 작성한 info.php에 접속해 본다 http://<도메인>/info.php에 접속하면 다음과 같이 화면에 PHP 5.6이 설치된 것을 확인한다. (접속이 안된다면 아파치의 루트 디렉토리 설정이나 CentOS의 Firewall기능 등에 의한 접근이 차단되었을 가능성이 있으니 Firewall설정 등을 살펴봐야 한다.)