순서는 다음과같습니다.
openssl 업데이트 → mysql설치 → apache설치 → php설치
사용버전정리
centOS 7 | openssl | pcre | apache | apr | apr-util | mysql | php |
1810 | 1.1.1b | 8.43 | 2.4.38 | 1.6.5 | 1.6.1 | 8.0.15 | 7.3.3 |
php7도 소스설치로 주로 진행합니다.
https://www.php.net/downloads.php
저는 글작성 당시 가장최신버전인 7.3.3 으로 하겠습니다.
ftp등으로 파일을 옮기거나 미러사이트중 링크가 따지는것을 활용하여 wget을 하시면 되겠습니다.
필수설치
# yum install libxml2-devel
# yum install libpng-devel
# yum install libjpeg-devel
libjpeg나 libpng기능을 굳이 사용하지 않는다면 설치할 필요 없습니다. 아래의 configure는 포함입니다.
필요없다면 적절히 수정해주세요.
만약 그누보드 이용자시라면 반드시 설치해야합니다.
# cd /usr/local/src
# tar -xvzf php-7.3.3.tar.gz
# cd php-7.3.3
# ./configure --prefix=/usr/local/php --with-mysqli --with-openssl=/usr/local/ssl --with-pdo-mysql=mysqlnd --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/apache/conf --with-zlib --disable-debug --enable-calendar --enable-ftp --enable-sockets --enable-sysvsem --with-gd --with-jpeg-dir=/usr/lib64
# make
# make install
php설정 파일을 복사합니다. development를 추천합니다.
# cp /usr/local/src/php-7.3.3/php.ini-development /usr/local/apache/conf/php.ini
# vi /usr/local/apache/conf/php.ini
; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults.
; http://php.net/mysqli.default-socket
mysqli.default_socket = /var/lib/mysql/mysql.sock
socket이라는 항목을 검색한뒤 빨간글을 참고 넣어줍니다.
(저 빨간글의 링크는 mysql설치방법에 따라 위치가 변경될 수 있습니다. /etc/my.cnf 에서 socket을 검색하여 참고 가능)
여기서 다른글은 다 /etc/php.ini 하라는데 왜 여기선 이렇게 하나요~ 질문하실수도있는데
이건 개인적인 취향인것같습니다.(전 회사가 php5랑 php7이랑 같이 돌려서 그런지..)
아마 /etc/php.ini에 해도 될것 같긴한데. 만약 안된다면 configure단계에서 --with-config-file-path=/usr/local/apache/conf 을 제거하셔야합니다.
아파치 설정값을 수정합니다.
# vi /usr/local/apache/conf/httpd.conf
.
.
<IfModule dir_module>
DirectoryIndex index.html index.php index.jsp
</IfModule>
.
.
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php .html .htm .inc
AddType application/x-httpd-php-source .phps
.
.
빨간색은 원래 없는것, 추가해서 넣어줍니다.(jsp는 나중에 필요해질수도있으니 수정할때 수정해두는게 좋음)
※ vi에디터에서 /키로 검색이 가능하며 n키로 다음검색으로 넘어가는게 가능
아파치서비스를 시작합니다.(이미 켜져있다면 restart 혹은 stop후 start 후자가 좀더 안정적입니다.)
# systemctl start httpd
이제 php문구를 사용하여 php가 정상적으로 설치되었는지 확인해봅니다.
# vi /usr/local/apache/htdocs/index.html
<html><body>
<?php phpinfo(); ?>
<h1>It works!</h1></body></html>
오류
{
configure중 오류
configure: error: libxml2 not found. Please check your libxml2 installation.
# yum install libxml2-devel
configure: error: jpeglib.h not found.
# yum install libjpeg-devel
configure: error: png.h not found.
# yum install libpng-devel
}
'IT, Computer > Linux' 카테고리의 다른 글
아파치 홈 디렉토리 설정 및 가상호스트설정 (0) | 2019.03.28 |
---|---|
DNS 서버만들기 (0) | 2019.03.27 |
CentOS 7 APM 설치 - Apache2.4.38 설치(컴파일설치) (0) | 2019.03.26 |
CentOS 7 APM 설치 - Mysql8 설치 (0) | 2019.03.26 |
CentOS 7 APM 설치 - Openssl 1.1.1b 업데이트(컴파일설치, shared설치) (1) | 2019.03.26 |