이번 포스팅에서는 WEB Server에 PHP7.4.19를 설치할 예정이다. 앞에서 Apach2.4를 설치했으니 이어서 같은 인스턴스에 설치한다.
$ yum install libjpeg-devel libpng-devel libxml2-devel -y
$ yum -y install curl-devel libpng \
libpng-devel libjpeg libjpeg-devel libwebp \
libwebp-devel libXpm libXpm-devel openssl \
openssl-devel autoconf curl zlib zlib-devel \
freetype freetype-devel gd gd-devel \
libjpeg libjpeg-devel libmcrypt libmcrypt-devel \
libtool-ltdl-devel libzip libzip-devel \
oniguruma-devel cmake gcc-c++ gcc \
libxml2-devel libxml2 libcurl libcurl-devel \
bzip2-devel sqlite-devel gmp gmp-devel perl wget
PHP configure 관련 자세한 내용이 궁금하다면,
https://velog.io/@nari120/PHP-7.4.19-Configure-option
# PHP 소스파일 링크는 아래 하단에서 확인 가능
# http://mirror.cogentco.com/pub/php/
$ wget http://mirror.cogentco.com/pub/php/php-7.4.19.tar.gz
$ tar xvfz php-7.4.19.tar.gz
$ cd php-7.4.19
# configure 전에는 꼭 자기가 설치한 apache 링크 위치 확인하기!!
# 만약 제꺼를 보고 계속 설치하시는 분이라면
# 아무생각 말고 믿고 따라하세요 😎
$ ./configure \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/usr/local/apache/conf \
--disable-debug \
--enable-safe-mode \
--enable-track-vars \
--enable-sockets \
--with-mod_charset \
--with-charset=utf8 \
--with-xml \
--with-language=korean \
--enable-mailparse \
--enable-calender \
--enable-sysvsem=yes \
--enable-sysvshm=yes \
--enable-ftp \
--enable-magic-quotes \
--enable-gd-native-ttf \
--enable-url-includes \
--enable-trans-id \
--enable-inline-optimization \
--enable-bcmath \
--with-jpeg \
--with-png \
--with-zlib \
--with-jpeg-dir=/usr \
--with-png-dir=/usr/lib \
--with-freetype-dir=/usr \
--with-libxml-dir=/usr \
--enable-exif \
--with-gh \
--with-ttf \
--with-gettext \
--enable-sigchild \
--enable-mbstring
$ make && make install
잘 설치되면 이런 화면이 뜬다.
# 환경 설정 파일 복사
$ cp /usr/local/src/php-7.4.19/php.ini-production /usr/local/apache/conf/php.ini
$ cp -arp /usr/local/src/php-7.4.19/php.ini-production /usr/local/apache/conf/php.ini
# -arp :: 모든 파일에 대해서 yes로
$ vi /usr/local/apache/conf/php.ini
# php.ini 파일 안에 아래 내용을 찾아서 숫자를 넉넉하게 늘려주기
...
post_max_size = 8M -> 100M
upload_max_filesize = 2M -> 100M
allow_url_fopen = Off
short_open_tag = On
...
vi /etc/profile
...
# 맨 마지막에 추가하기
PATH=$PATH:$HOME/bin:/usr/local/php/bin:
여기까지 했다면,
ssh 재시작 또는 "$ source /etc/profile" 입력하기
vi /usr/local/apache/conf/httpd.conf
# AddType 검색해서 <IfModule mime_module>
</IfModule> 이부분 안에 아래 2줄 추가
AddType application/x-httpd-php .php .html .htm .inc .pia
AddType application/x-httpd-php-source .phps
vi /usr/local/apache/htdocs/phpinfo.php
<?php
phpinfo();
?>
$ systemctl restart apache
$ systemctl status apache