본문 바로가기
프로그램

apache 2.2.25 와 PHP 5.2.17 구버전 컴파일 설치 운영 II

by Dog_발자 2022. 11. 12.
반응형

PHP 5.2.17 구버전 컴파일 설치

 

1.  설치 전 php 5 대는 libxml 즉 xml2 가 설치되어있어야 한다

#> yum install libxml2*
#> yum install gmp*

2. PHP 5.2.17 구버전  설치전 기본 package 설치 

#>yum install -y libjpeg* libpng* freetype* gd-* gcc gcc-c++ gdbm-devel libtermcap-devel
#>yum install pcre-devel lua-devel libxml2-devel ncurses-devel zlib zlib-devel curl openssl openssl-devel libtermcap-devel libc-client-devel bison gcc g++ cpp gcc-c++ freetype freetype-devel freetype-utils gd gd-devel libjpeg libjpeg-devel libpng libpng-devel curl curl-devel flex php-mbstring libexif-devel cmake

3. iconv 설치합니다.

iconv 소스 다운 : wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz

#> ./configure --with-iconv=/usr/local
#> make
#> make install

4 PHP 설치

#>./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/usr/local/lib \
--with-language=korean \
--with-charset=euc_kr \
--enable-track-vars \
--enable-safe-mode \
--enable-magic-quotes \
--enable-debugger \
--enable-ftp \
--enable-sockets \
--enable-calendar \
--enable-ssl \
--enable-so \
--enable-memory-limit=yes \
--with-zlib-dir=/usr \
--with-zlib \
--with-png-dir \
--with-jpeg-dir \
--with-freetype \
--with-curl \
--enable-mbstring \
--enable-exif \
--with-iconv=/usr/local \
--with-interbase=/opt/firebird \
--with-openssl \
--with-gd=/usr \
--with-mcrypt=/usr/local

#>make
#>make install

#>cp php.ini-dist /usr/local/lib/php.ini

5 설치시 발생되는 오류 해결

* 필수 package 미 설치 시 발생 오류

#>yum install libcurl-devel
#>yum install libjpeg-devel
#>yum install libpng-devel
#>yum install freetype-devel
#>yum install gd-devel

* 필수 package는 설치 되었으나  64bit lib에 파일이 없는 경우 파일 링크 생성 ( Centos 64bit인 경우 )

#> ln -s /usr/lib64/libjpeg.so /usr/lib
#> ln -s /usr/lib64/libpng.so /usr/lib
#> ln -s /usr/lib64/libgd.so /usr/lib

* [ext/dom/node.lo] 오류 1

php-5.2.17 컴파일 소스가 있는 위치에서 libxml29_compat.patch 파일을 다운 받은 후 해당 파일을 을 실행합니다.

libxml29_compat.zip
0.00MB

#> patch -p0 < ./libxml29_compat.patch

// 위 페치 실행 결과 문구 
patching file ext/dom/node.c
Hunk #1 succeeded at 1950 (offset 55 lines).
patching file ext/dom/documenttype.c
Hunk #1 succeeded at 215 (offset 10 lines).
patching file ext/simplexml/simplexml.c
Hunk #1 succeeded at 1343 (offset -74 lines).

 

6. Zend Optimizer  다운로드 및 설치

ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz
2.71MB

  • zend optimizer 3.3.9 버전은 apache가 prefork 방식으로 설치되었을때만 연동이 가능합니다.
  • zend optimizer 3.3.9 파일의 압축을 해제 후 해제된 폴더의 data 경로의 목록을 확인하면 각 PHP 버전에 알맞은 ZendOptimizer.so 파알을 확인할 수 있습니다.
  • php 버전에 맞는 ZendOptimizer.so 파일을 자신의 php/lib 경로에 복새해 넣은 후 php.ini의 설정에  ZendOptimizer.so의 extension을 추가하여 저장합니다.
[root@localhost src]# ll ./ZendOptimizer-3.3.9-linux-glibc23-x86_64/data
합계 4
drwxr-xr-x 2 root root   30  8월 24  2009 4_2_0_comp
drwxr-xr-x 2 root root   30  8월 24  2009 4_2_x_comp
drwxr-xr-x 2 root root   30  8월 24  2009 4_3_x_comp
drwxr-xr-x 2 root root   30  8월 24  2009 4_4_x_comp
drwxr-xr-x 2 root root   30  8월 24  2009 5_0_x_comp
drwxr-xr-x 2 root root   30  8월 24  2009 5_1_x_comp
drwxr-xr-x 2 root root   30  8월 24  2009 5_2_x_comp
-rw-r--r-- 1 root root 2088  1월 29  2004 poweredbyoptimizer.gif
[root@localhost src]#

#>vi /usr/local/lib/php.ini

[Zend]
zend_extension=/usr/local/php/lib/ZendOptimizer.so
  • 아파치 재시동 
    #>/usr/local/apache restart 
반응형

댓글