본문 바로가기

CentOS7에 PHP7.x 설치하기

728x90
반응형

PHP를 설치하기 전에 먼저 아파치 데몬을 중지한다.
#] service httpd stop

만약 PHP5.x 버전이 설치 돼 있다면 삭제한다.

php 설치 정보를 확인한다.
]# yum list installed *php*

 php 모듈을 제거한다.
]# yum remove php php-cli php-common php-gd php-ldap php-mysql php-odbc php-pdo php-pear php-pecl-apc php-pecl-memcache php-pgsql php-soap php-xml php-xmlrpc


이제 PHP7.x 설치를 시작한다.
○ PHP7.x 설치를 위한 repo 등록

]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 

https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm /var/tmp/rpm-tmp.2J9MM9: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY################# [100%]
Updating / installing...   1:epel-release-7-11        ######################## [100%]

]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

https://mirror.webtatic.com/yum/el7/webtatic-release.rpm /var/tmp/rpm-tmp.EISdS2: Header V4 RSA/SHA1 Signature, key ID 62e74ca5: NOKEY              ######################## [100%]
Updating / installing...   1:webtatic-release-7-3   ########################### [100%]

○ PHP7.1 버전을 설치한다.
]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm /var/tmp/rpm-tmp.2J9MM9: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY ####################### [100%]
Updating / installing... 1:epel-release-7-11        ################################# [100%]
[root@wonjustory etc]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

https://mirror.webtatic.com/yum/el7/webtatic-release.rpm /var/tmp/rpm-tmp.EISdS2: Header V4 RSA/SHA1 Signature, key ID 62e74ca5: NOKEY    ################################# [100%]

Updating / installing... 1:webtatic-release-7-3      ################################# [100%][root@wonjustory etc]# yum install mod_php71w php71w-opcache php71w-mysql php71w-gd php71w-mbstring php71w-mcrypt php71w-cli php71w-xml php71w-xmlrpc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile epel/x86_64/metalink                        | 6.3 kB  00:00:00     
 * base: ftp.neowiz.com
 * epel: mirror.premi.st
 * extras: ftp.neowiz.com
 * updates: ftp.neowiz.com
 * webtatic: sp.repo.webtatic.com
epel                                                                                                         | 3.2 kB  00:00:00  webtatic                                                                                                  | 3.6 kB  00:00:00  
(1/5): epel/x86_64/updateinfo                                                                      | 932 kB  00:00:00    (2/5): epel/x86_64/group_gz                                                                      |  88 kB  00:00:00     
(3/5): webtatic/x86_64/group_gz                                                                   |  448 B  00:00:00    (4/5): epel/x86_64/primary                                                                            | 3.6 MB  00:00:01  
(5/5): webtatic/x86_64/primary_db                                                                  | 400 kB  00:00:02    
epel                                                              12716/12716
Resolving Dependencies
--> Running transaction check
---> Package mod_php71w.x86_64 0:7.1.23-1.w7 will be installed
---> Package php71w-cli.x86_64 0:7.1.23-1.w7 will be installed
--> Processing Dependency: php71w-common(x86-64) = 7.1.23-1.w7 for package: php71w-cli-7.1.23-1.w7.x86_64
---> Package php71w-gd.x86_64 0:7.1.23-1.w7 will be installed
--> Processing Dependency: libpng15.so.15(PNG15_0)(64bit) for package: php71w-gd-7.1.23-1.w7.x86_64
--> Processing Dependency: libpng15.so.15()(64bit) for package: php71w-gd-7.1.23-1.w7.x86_64
--> Processing Dependency: libXpm.so.4()(64bit) for package: php71w-gd-7.1.23-1.w7.x86_64
--> Processing Dependency: libX11.so.6()(64bit) for package: php71w-gd-7.1.23-1.w7.x86_64
---> Package php71w-mbstring.x86_64 0:7.1.23-1.w7 will be installed
---> Package php71w-mcrypt.x86_64 0:7.1.23-1.w7 will be installed
--> Processing Dependency: libmcrypt.so.4()(64bit) for package: php71w-mcrypt-7.1.23-1.w7.x86_64
--> Processing Dependency: libltdl.so.7()(64bit) for package: php71w-mcrypt-7.1.23-1.w7.x86_64
---> Package php71w-mysql.x86_64 0:7.1.23-1.w7 will be installed
--> Processing Dependency: php71w-pdo(x86-64) for package: php71w-mysql-7.1.23-1.w7.x86_64
---> Package php71w-opcache.x86_64 0:7.1.23-1.w7 will be installed
---> Package php71w-xml.x86_64 0:7.1.23-1.w7 will be installed
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.24)(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.22)(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.18)(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.13)(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
--> Processing Dependency: libxslt.so.1(LIBXML2_1.0.11)(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
--> Processing Dependency: libxslt.so.1()(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
--> Processing Dependency: libexslt.so.0()(64bit) for package: php71w-xml-7.1.23-1.w7.x86_64
---> Package php71w-xmlrpc.x86_64 0:7.1.23-1.w7 will be installed
--> Running transaction check
---> Package libX11.x86_64 0:1.6.5-1.el7 will be installed
--> Processing Dependency: libX11-common >= 1.6.5-1.el7 for package: libX11-1.6.5-1.el7.x86_64
--> Processing Dependency: libxcb.so.1()(64bit) for package: libX11-1.6.5-1.el7.x86_64
---> Package libXpm.x86_64 0:3.5.12-1.el7 will be installed
---> Package libmcrypt.x86_64 0:2.5.8-13.el7 will be installed
---> Package libpng.x86_64 2:1.5.13-7.el7_2 will be installed
---> Package libtool-ltdl.x86_64 0:2.4.2-22.el7_3 will be installed
---> Package libxslt.x86_64 0:1.1.28-5.el7 will be installed
---> Package php71w-common.x86_64 0:7.1.23-1.w7 will be installed
---> Package php71w-pdo.x86_64 0:7.1.23-1.w7 will be installed
--> Running transaction check
---> Package libX11-common.noarch 0:1.6.5-1.el7 will be installed
---> Package libxcb.x86_64 0:1.12-1.el7 will be installed
--> Processing Dependency: libXau.so.6()(64bit) for package: libxcb-1.12-1.el7.x86_64
--> Running transaction check
---> Package libXau.x86_64 0:1.0.8-2.1.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved

===============================================================
 Package                            Arch                      Version                             Repository                   Size
================================================================
Installing:
 mod_php71w                         x86_64                    7.1.23-1.w7                         webtatic                    2.9 M
 php71w-cli                         x86_64                    7.1.23-1.w7                         webtatic                    3.0 M
 php71w-gd                          x86_64                    7.1.23-1.w7                         webtatic                    133 k
 php71w-mbstring                    x86_64                    7.1.23-1.w7                         webtatic                    543 k
 php71w-mcrypt                      x86_64                    7.1.23-1.w7                         webtatic                     26 k
 php71w-mysql                       x86_64                    7.1.23-1.w7                         webtatic                     82 k
 php71w-opcache                     x86_64                    7.1.23-1.w7                         webtatic                    203 k
 php71w-xml                         x86_64                    7.1.23-1.w7                         webtatic                    127 k
 php71w-xmlrpc                      x86_64                    7.1.23-1.w7                         webtatic                     46 k
Installing for dependencies:
 libX11                             x86_64                    1.6.5-1.el7                         base                        606 k
 libX11-common                      noarch                    1.6.5-1.el7                         base                        164 k
 libXau                             x86_64                    1.0.8-2.1.el7                       base                         29 k
 libXpm                             x86_64                    3.5.12-1.el7                        base                         55 k
 libmcrypt                          x86_64                    2.5.8-13.el7                        epel                         99 k
 libpng                             x86_64                    2:1.5.13-7.el7_2                    base                        213 k
 libtool-ltdl                       x86_64                    2.4.2-22.el7_3                      base                         49 k
 libxcb                             x86_64                    1.12-1.el7                          base                        211 k
 libxslt                            x86_64                    1.1.28-5.el7                        base                        242 k
 php71w-common                      x86_64                    7.1.23-1.w7                         webtatic                    1.2 M
 php71w-pdo                         x86_64                    7.1.23-1.w7                         webtatic                     90 k
Transaction Summary
==============================================================================================Install  9 Packages (+11 Dependent packages)

Total download size: 9.9 M
Installed size: 38 M
Is this ok [y/d/N]: y
Downloading packages:
(1/20): libX11-common-1.6.5-1.el7.noarch.rpm                                                                 | 164 kB  00:00:00     
(2/20): libX11-1.6.5-1.el7.x86_64.rpm                                                                        | 606 kB  00:00:00     
(3/20): libXau-1.0.8-2.1.el7.x86_64.rpm                                                                      |  29 kB  00:00:00     
(4/20): libXpm-3.5.12-1.el7.x86_64.rpm                                                                       |  55 kB  00:00:00     
(5/20): libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm                                                               |  49 kB  00:00:00     
(6/20): libxcb-1.12-1.el7.x86_64.rpm                                                                         | 211 kB  00:00:00     
(7/20): libpng-1.5.13-7.el7_2.x86_64.rpm                                                                     | 213 kB  00:00:00     
(8/20): libxslt-1.1.28-5.el7.x86_64.rpm                                                                      | 242 kB  00:00:00     
warning: /var/cache/yum/x86_64/7/epel/packages/libmcrypt-2.5.8-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEYPublic key for libmcrypt-2.5.8-13.el7.x86_64.rpm is not installed
(9/20): libmcrypt-2.5.8-13.el7.x86_64.rpm                                                                    |  99 kB  00:00:00     
warning: /var/cache/yum/x86_64/7/webtatic/packages/php71w-gd-7.1.23-1.w7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 62e74ca5: NOKEY
Public key for php71w-gd-7.1.23-1.w7.x86_64.rpm is not installed
(10/20): php71w-gd-7.1.23-1.w7.x86_64.rpm                                                                    | 133 kB  00:00:00     
(11/20): php71w-mcrypt-7.1.23-1.w7.x86_64.rpm                                                                |  26 kB  00:00:00     
(12/20): php71w-mysql-7.1.23-1.w7.x86_64.rpm                                                                 |  82 kB  00:00:00     
(13/20): mod_php71w-7.1.23-1.w7.x86_64.rpm                                                                   | 2.9 MB  00:00:01     
(14/20): php71w-opcache-7.1.23-1.w7.x86_64.rpm                                                               | 203 kB  00:00:00     
(15/20): php71w-pdo-7.1.23-1.w7.x86_64.rpm                                                                   |  90 kB  00:00:00     
(16/20): php71w-xml-7.1.23-1.w7.x86_64.rpm                                                                   | 127 kB  00:00:00     
(17/20): php71w-xmlrpc-7.1.23-1.w7.x86_64.rpm                                                                |  46 kB  00:00:00     
(18/20): php71w-mbstring-7.1.23-1.w7.x86_64.rpm                                                              | 543 kB  00:00:02     
(19/20): php71w-cli-7.1.23-1.w7.x86_64.rpm                                                                   | 3.0 MB  00:00:02     
(20/20): php71w-common-7.1.23-1.w7.x86_64.rpm                                                                | 1.2 MB  00:00:02     
------------------------------------------------------------------------------------------------------------
Total                                                                                               2.7 MB/s | 9.9 MB  00:00:03     
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-webtatic-el7
Importing GPG key 0x62E74CA5:
 Userid     : "Webtatic EL7 <rpms@webtatic.com>"
 Fingerprint: 830d b159 6d9b 9b01 99dc 24a3 e87f d236 62e7 4ca5
 Package    : webtatic-release-7-3.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-webtatic-el7
Is this ok [y/N]: y
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Importing GPG key 0x352C64E5:
 Userid     : "Fedora EPEL (7) <epel@fedoraproject.org>"
 Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
 Package    : epel-release-7-11.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
Installing : php71w-common-7.1.23-1.w7.x86_64                                                   1/20 
Installing : php71w-pdo-7.1.23-1.w7.x86_64                                                         2/20 
  Installing : libX11-common-1.6.5-1.el7.noarch                                                    3/20 
  Installing : libmcrypt-2.5.8-13.el7.x86_64                                                           4/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
  Installing : libxslt-1.1.28-5.el7.x86_64                                                                5/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
  Installing : 2:libpng-1.5.13-7.el7_2.x86_64                                                           6/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
  Installing : libtool-ltdl-2.4.2-22.el7_3.x86_64                                                        7/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
 Installing : libXau-1.0.8-2.1.el7.x86_64                                                                 8/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so? Installing : libxcb-1.12-1.el7.x86_64              9/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
  Installing : libX11-1.6.5-1.el7.x86_64                                                                                      10/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
  Installing : libXpm-3.5.12-1.el7.x86_64                                                                     11/20 
/sbin/ldconfig: /usr/lib/vmware-tools/lib64/libvmGuestLib.so/libvmGuestLib.so?
  Installing : php71w-gd-7.1.23-1.w7.x86_64                                                              12/20 
  Installing : php71w-mcrypt-7.1.23-1.w7.x86_64                                                          13/20 
  Installing : php71w-xml-7.1.23-1.w7.x86_64                                                             14/20 
  Installing : php71w-mysql-7.1.23-1.w7.x86_64                                                           15/20 
  Installing : php71w-xmlrpc-7.1.23-1.w7.x86_64                                                       16/20
 stalling : php71w-mbstring-7.1.23-1.w7.x86_64                               17/20 
  Installing : php71w-opcache-7.1.23-1.w7.x86_64                              18/20 
  Installing : php71w-cli-7.1.23-1.w7.x86_64                                19/20 
  Installing : mod_php71w-7.1.23-1.w7.x86_64                            20/20 
  Verifying  : libXpm-3.5.12-1.el7.x86_64                                      1/20 
  Verifying  : libX11-1.6.5-1.el7.x86_64                                     2/20 
  Verifying  : php71w-xmlrpc-7.1.23-1.w7.x86_64                                         3/20 
  Verifying  : libxcb-1.12-1.el7.x86_64                                                       4/20 
  Verifying  : php71w-mbstring-7.1.23-1.w7.x86_64                                             5/20 
  Verifying  : libXau-1.0.8-2.1.el7.x86_64                                                6/20 
  Verifying  : php71w-mcrypt-7.1.23-1.w7.x86_64                                         7/20 
  Verifying  : php71w-opcache-7.1.23-1.w7.x86_64                                              8/20 
  Verifying  : php71w-mysql-7.1.23-1.w7.x86_64                                            9/20 
  Verifying  : libtool-ltdl-2.4.2-22.el7_3.x86_64                                       10/20 
  Verifying  : php71w-cli-7.1.23-1.w7.x86_64                                                     11/20 
  Verifying  : php71w-pdo-7.1.23-1.w7.x86_64                                     12/20 
  Verifying  : mod_php71w-7.1.23-1.w7.x86_64                                      13/20 
  Verifying  : 2:libpng-1.5.13-7.el7_2.x86_64                                   14/20 
  Verifying  : libxslt-1.1.28-5.el7.x86_64                   15/20 
  Verifying  : libmcrypt-2.5.8-13.el7.x86_64              16/20 
  Verifying  : libX11-common-1.6.5-1.el7.noarch            17/20 
  Verifying  : php71w-common-7.1.23-1.w7.x86_64            18/20 
  Verifying  : php71w-xml-7.1.23-1.w7.x86_64              19/20 
  Verifying  : php71w-gd-7.1.23-1.w7.x86_64                20/20 
Installed:
  mod_php71w.x86_64 0:7.1.23-1.w7              php71w-cli.x86_64 0:7.1.23-1.w7            php71w-gd.x86_64 0:7.1.23-1.w7            
  php71w-mbstring.x86_64 0:7.1.23-1.w7         php71w-mcrypt.x86_64 0:7.1.23-1.w7         php71w-mysql.x86_64 0:7.1.23-1.w7         
  php71w-opcache.x86_64 0:7.1.23-1.w7          php71w-xml.x86_64 0:7.1.23-1.w7            php71w-xmlrpc.x86_64 0:7.1.23-1.w7        
Dependency Installed:
  libX11.x86_64 0:1.6.5-1.el7                   libX11-common.noarch 0:1.6.5-1.el7          libXau.x86_64 0:1.0.8-2.1.el7          
  libXpm.x86_64 0:3.5.12-1.el7                  libmcrypt.x86_64 0:2.5.8-13.el7             libpng.x86_64 2:1.5.13-7.el7_2         
  libtool-ltdl.x86_64 0:2.4.2-22.el7_3          libxcb.x86_64 0:1.12-1.el7                  libxslt.x86_64 0:1.1.28-5.el7          
  php71w-common.x86_64 0:7.1.23-1.w7            php71w-pdo.x86_64 0:7.1.23-1.w7            
Complete!

설치는 이것으로 간단히 끝났다.

○ php 버전 확인

]# php -v

PHP 7.1.23 (cli) (built: Oct 11 2018 17:53:46) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.23, Copyright (c) 1999-2018, by Zend Technologies

○ php.ini 설정하기

]# find / -name php.ini

/etc/php.ini

php.ini가 있는 위치 확인

]# vi php.ini

short_open_tag = On
php 시작 태그를 <?php와 <? 모두 사용 할 수 있게 한다. Off로 하면 <?php만 사용 할 수 있다.

allow_url_fopen = Off
Off로 하면 원격에서 내 url로 접근해 파일을 여는 걸 차단한다.

post_max_size = 32M
POST method로 업로드 할 수 있는 데이터의 크기

upload_max_filesize = 5M
업로드 할 수 있는 파일의 크기.
그 외 기본적인 ini 설정은 실제로 프로그램을 코딩하면서 PHP 함수로 설정가능하기 때문에 이정도로 한다.

○ php 환경설정

]# find / -name php.conf
/etc/httpd/conf.d/php.conf
php.conf의 위치 알아내기

]# vi /etc/httpd/conf.d/php.conf
AddType application/x-httpd-php-source .php .php3 .php4 .phps .htm .html .inc

php 프로그램 파일의 확장자를 지정한다. 한 디렉토리에 같은 이름의 파일이 여러 개 존재할 경우 앞에서부터 순서대로 우선권을 갖는다. 예들어 같은 디렉토리에 index.php와 index.html이 동시에 존재하는 경우 index.php를 먼저 읽어들인다.

○ 아파치에 PHP 연동하기
AddType application/x-httpd-php .ph .php .php3 .inc .asp .html .htm
AddType application/x-httpd-php-source .phps
AddHandler application/x-httpd-php .php .html .htm .phtml

httpd.conf 파일에 위의 세 줄을 추가한다.

 

 

 

CentOS7에 MySQL 8.x 설치하기 (tistory.com)

 

CentOS7에 MySQL 8.x 설치하기

MySQL8.x 버전은 PHP7.x에서 작동하므로 주의해야 한다. MySQL8을 사용하기 위해서 PHP 버전을 확인해 보자. ○ MySQL 8.x 설치를 위한 준비 작업 ]# rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.

zibsin.tistory.com

CentOS7에 아파치(Apache) 설치하는 방법 (tistory.com)

 

CentOS7에 아파치(Apache) 설치하는 방법

PHPs.KR에서 VPS(가상서버호스팅)을 받고 있다. 두 번째인데 첫번째는 기본세팅을 그대로 사용했었다. 그런데 APM(Apache + PHP + MySQL) 버전이 낮아 업그레이드 하려니 기존에 RPM으로 설치 된 프로그램

zibsin.tistory.com

 

728x90
반응형