테스트환경 : CentOS 5.x, PHP 5.2.5 |
빨강색 : 변경되지 않는 정보 (명령어, 형식 등)
파랑색 : 변경될 수 있는 정보 (경로, 파일명, 옵션 등)
녹색 : 주석정보
※ curl 확장모듈 설치 기준으로 작성 하였으며 대부분의 확장모듈은 아래와 같이 설치하셔도 문제가 없습니다.
하지만, PHP에서 공식지원하지 않거나 버전이 맞지 않는 확장모듈이 있을 수 있습니다.
- 재컴파일 없이 설치방법 -
1. 확장모듈로 사용할 프로그램 라이브러리가 설치되어 있는지 확인하고 설치되어 있지 않다면 설치 합니다.
예)
# yum install curl curl-devel
2. 설치한 PHP와 동일한 버전의 소스 다운로드 후 압축해제 합니다.
예)
# tar xvfz php-5.2.5.tar.gz
3. 소스파일에서 설치할 확장모듈과 동일한 이름의 경로로 이동합니다.
예)
# cd /root/pkg/php-5.2.5/ext/curl
4. phpize 파일을 실행합니다. (사용자마다 다를 수 있음)
예)
# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519
5. configure 및 compile 합니다.
./configure --with-php-config=/usr/local/php/bin/php-config --enable-설치하려는확장모듈명
예)
# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-curl
# echo $?
(echo $? 명령어는 에러 유무를 확인하는 방법 입니다. 0이 아닌 다른 숫자가 나오면 에러가 발생한 것 입니다.)
# make
# echo $?
6. make 명령어를 실행후 ./modules/확장모듈명.so 파일이 생성됩니다. (확인)
확장모듈.so 파일을 php.ini 파일의 extension_dir=확장모듈 경로에 복사합니다.
예)
# ll ./modules/
curl.la
curl.so
# vi /usr/local/php/lib/php.ini
extension_dir = "./"
(extension_dir = "./" 로 되어 있을 경우로 가정 하겠습니다. module 디렉토리를 만들어 별도로 관리하는 것을 추천 합니다.)
# mkdir /usr/local/php/module/
# cp ./modules/curl.* /usr/local/php/module/
7. php.ini 파일을 열어 extension=확장모듈.so 파일을 추가 합니다.
예)
# vi /usr/local/php/lib/php.ini
extension=curl.so
8. php -l /경로/php.ini 로 syntax checking
예)
# /usr/local/php/bin/php -l /usr/local/php/lib/php.ini
9. 아파치를 재시작 합니다.
예)
# /usr/local/apache/bin/apachectl restart
10. php -m 명령어 또는 phpinfo 및 테스트파일(첨부파일)로 설치되었는지 확인 합니다.
예)
# /usr/local/php/bin/php -m
- 컴파일 설치(APM 컴파일 할수 있는 분만) -
1. 확장모듈로 사용할 프로그램 라이브러리가 설치되어 있는지 확인하고 설치되어 있지 않다면 설치 합니다.
예)
# yum install curl curl-devel
2. phpinfo의 Configure Command 정보 및 별도 module정보를 확인합니다.
예)
A. phpinfo 파일 생성하여 확인
<?
phpinfo();
?>
B. php.ini 파일의 extension_dir= 경로에 module정보 확인
3. 설치한 PHP와 동일한 버전의 소스 다운로드 후 압축해제 합니다.
예)
# tar xvfz php-5.2.5.tar.gz
4. configure 처리 합니다.
예)
# ./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-apache-install=/usr/local/apache \
--with-config-file-path=/usr/local/php/lib \
--with-gdbm \
--with-gd \
--with-jpeg-dir=/usr/lib \
--with-mysql=/usr/local/mysql \
--with-iconv=/usr/local \
--with-zlib-dir=/usr/lib \
--with-freetype-dir=/usr/lib \
--with-curl \
--disable-debug \
--enable-module=so \
--enable-inline-optimization \
--enable-track-vars \
--enable-magic-quotes \
--enable-ftp \
--enable-exif \
--enable-xml \
--enable-mbstring=all \
--enable-mbstr-enc-trans \
--enable-mbregex
5. compile 및 install 처리 합니다.
예)
# make -j4
( -j4 옵션을 사용하면 코어를 4개까지 사용하여 빠른처리가 가능합니다. 쿼드코어가 지원되야 합니다.)
# make install
6. 아파치를 재시작 합니다.
예)
# /usr/local/apache/bin/apachectl restart
7. php -m 명령어 또는 phpinfo 및 테스트파일(첨부파일)로 설치되었는지 확인 합니다.
예)
# /usr/local/php/bin/php -m
출처 : http://blog.naver.com/smilemoon602/90136187912
'HardWare & Install > Linux Setting' 카테고리의 다른 글
우분투 18.04에서 MySQL8.0 설치 (0) | 2019.09.05 |
---|---|
방화벽 설정하기 (웹서버) (0) | 2013.11.04 |
PHP에서 MS-SQL 서버를 연동하기 위한 방법 (업데이트) (0) | 2013.11.04 |
CentOS 64bit APM 소스 설치 (0) | 2013.11.01 |
리눅스 - APC(Alternative PHP Cache) 설치 (1) | 2013.04.10 |
웹에서 사용하는 운영체제 eyeOS (0) | 2013.04.10 |
리눅스(CentOS)에서 yum으로 APM설치 (1) | 2010.04.27 |