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에 아파치(Apache) 설치하는 방법 (tistory.com)
'프로그래밍 > Web server & Linux' 카테고리의 다른 글
CentOS7에 MySQL 8.x 설치하기 (0) | 2019.09.06 |
---|---|
CentOS7에 아파치(Apache) 설치하는 방법 (0) | 2019.09.06 |
PHP 스크립트 여는 태그인 <?와 <?= 모두 사용하고 싶을 때 (0) | 2019.09.06 |