소스파일을 이용한 컴파일 설치
1) php 소스파일 다운로드 및 압축해제
php공식 페이지 (http://www.php.net)를 참고하여 php 최신 버전 소스파일을 다운받은 후 압축을 해제합니다.
# php 소스파일의 다운로드 및 압축 해제
cd /usr/local/src wget http://kr1.php.net/distributions/php-5.6.17.tar.gz tar xzvf php-5.6.17.tar.gz |
2) 컴파일에 필요한 패키지 설치
php 설치에 필요한 패키지들에 대하여 사전 설치를 진행합니다.
yum install -y libxml2-devel libcurl-devel gd-devel libmcrypt-devel |
3) php소스컴파일 및 설치
php소스파일 및 필수 패키지들의 준비가 완료되면 configure 명령어를 통해 설치 구성을 진행합니다.
# configure command 정리
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache/bin/apxs –with-mysql=/usr/local/mysql –with-mysqli=/usr/local/mysql/bin/mysql_config –with-pdo-mysql=/usr/local/mysql –disable-debug –enable-sigchild –enable-inline-optimization –enable-sysvsem –enable-sysvshm –enable-bcmath –enable-ftp –enable-sockets –enable-exif –enable-soap –with-zlib-dir=/usr –with-zlib –with-gd –with-jpeg-dir=/usr –with-png-dir=/usr –with-freetype-dir=/usr –with-iconv –enable-mbstring –with-curl –with-openssl –enable-zip |
Configure 완료 후 make 명령어를 통해 컴파일 및 설치를 진행합니다.
아래와 같이 정상적으로 컴파일이 완료되어 설치된 것을 확인할 수 있습니다.
4) 설치 후 확인 및 설정
php 소스 컴파일 설치의 경우 특정 확장자에 대하여php코드가 실행될 수 있도록 아래와 같이 httpd.conf 파일에 해당 내용을 기재하여줍니다.
# httpd.conf 내 추가 내용
<FilesMatch “\.(php|php4|php3|htm|html)$”> SetHandler application/x-httpd-php </FilesMatch> |
웹 서비스를 재 시작 한 후 아래와 같이 php확장자에 대해 테스트 페이지를 만들어 정상적으로 php 스크립트가 처리되는지 확인해봅니다. 관련 테스트 페이지는 index.php 파일에 단순 phpinfo페이지가 출력되도록 추가하였습니다.
rpm 설치
1) php 패키지 설치
CentOS기본 repo에 등록된 php는 5.4 버전입니다. 최신 버전의 php를 설치하기 위해서는 별도의 php repository를 등록해주거나 rpm을 다운로드 받아 설치하면 됩니다. 이 글에서는 php 5.4버전을 설치하는 것으로 진행하였습니다.
2) 설치 후 확인 사항
설치 완료 후 정상적으로 php가 설치되었는지 점검합니다. rpm으로 php가 설치되면 별도의 추가사항 없이 기본적으로 apache와 연동이 되므로 아래 명령어를 통해 정상적으로 연동되었는지 확인합니다.
# command 정리
cat /etc/httpd/conf.d/php.conf |grep -Ev “^#|^$” echo ‘<?php;phpinfo()?>’ > /var/www/html/index.php cat /var/www/html/index.php service httpd stop;service httpd start |
3) 브라우저 테스트
phpinfo페이지가 페이지가 정상적으로 출력되는지 일반 브라우저에서 호출해봅니다.
- 설치 후 설정
php 초기 설치 시 일반적으로 이용하기에는 다소 설정이 부족할 수 있습니다. 일반적인 이용을 위하여 다음의 php 환경 설정에 대해 수정이 필요합니다.
# php.ini 파일의 수정 예제
short_open_tag = On display_errors = On allow_url_fopen = On upload_max_filesize = 200M memory_limit = 512M post_max_size = 200M max_execution_time = 300 max_input_vars = 10000 |