프로그램

PHP Source 설치 하기 - php5

mulderu 2012. 12. 19. 12:34


오늘은 19대 대선일이자 휴일이죠... 물론 투표는 하고..~

php를 소스로 설치 해 보겠습니다. ... 왜냐면.... 그냥 ~

제 서버 환경은 아래와 같습니다.

root@turbine01:/usr/local# uname -a
Linux turbine01 3.0.0-26-server #43-Ubuntu SMP Tue Sep 25 17:37:40 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
root@turbine01:/usr/local# 


php install documents : http://php.net/manual/en/install.unix.apache2.php


--------  한국어 설명 --------

아래는 http://www.cycix.net/   올라온 php 소스 설치 방법 입니다.

직접 가기 : http://goo.gl/7VrtQ


php 소스컴파일 설치

1. 라이브러리 설치
// 컴파일 환경설정에 추가해준 라이브러리 들을 우선적으로 설치 해야 한다.
// os를 인스톨 할때 선택해 주었다면 설치할 필요가 없다.

// 빠진 것이 있다면 컴파일 실행시 경고메세지와 함께 컴파일이 중지된다.

--libjpeg 설치 (다운로드 하는곳

---- tar xvfz jpegsrc.v7.tar.gz
---- cd jpegsrc-v7

---- ./configure --enable-shared --enable-static
---- make
---- make install
--libpng 설치 (다운로드 하는곳)
---- tar xvfz libpng-1.2.41.tar.gz
---- cd libpng-1.2.41
---- cp scripts/makefile.linux makefile
---- make
---- make install

--freetype 설치 (다운로드 하는곳)

---- tar xvf freetype-2.3.11.tar.bz2
---- cd freetype-2.3.11
---- ./configure
---- make
---- make install


2. 소스다운로드 ( 다운로드 하는곳)


3. 압축해제
tar xvfz php-5.2.12.tar.gz
// 현제php-5.3.1버전은 설치 성공사례를 찾지 못하였다


4. 컴파일설정
./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-config-file-path=/usr/local/apache/conf \
--enable-safe-mode \
--enable-sockets \
--enable-sysvsem=yes \
--enable-sysvshm=yes \
--enable-ftp \
--enable-magic-quotes \
--enable-gd-native-ttf \
--enable-inline-optimization \
--enable-bcmath \
--enable-exif \
--enable-sigchild \
--enable-mbstring \
--with-zlib \
--with-jpeg-dir=/usr \
--with-png-dir=/usr/lib \
--with-freetype-dir=/usr \
--with-libxml-dir=/usr \
--with-gd \
--with-gettext

//좀더 많은 옵션은 php configure option 게시글 을 참고하기 바랍니다.


5. 컴파일
make


6. 설치
make install


7. conf파일 복사
cp php.ini-dist /usr/local/apache/conf/php.ini


8. 아파치와연동
vi /usr/local/apache/conf/httpd.conf
  <IfModule dir_module>
    DirectoryIndex index.html index.php
  <IfModule>
  <IfModule mime_module>
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
  <IfModule>


9. 실행
/etc/init.d/httpd start or /etc/init.d/httpd restart


10. 동작 테스트


** selinux를 permisive로 변경해 주지 않으면 아파치 실행에 문제가 발생할 수 있다.
vi /etc/selinux/config
// 자세한 사항은 selinux 게시글을 참고해 주기 바랍니다


** iptables를 설정해 주지 않으면 웹에서 접속 할 수 없다.
service iptables stop
// php를 설치 확인 하는것이 목적이므로 iptable(방화벽)을 끄고 접속 테스트를 해 본다.

end


위 블로그에서 조금 수정할 부분이 있다.. 저는 최신버전을 설치해서 조금 다른곳이 있습니다.


 - 멀더의 설치 버전 : php-5.4.9

 -  ./configure 옵션에서  apche path 나 mysql path 를 로컬설정에 맞게 합니다.

 - php.ini 파일의 카피를 : cp php.ini-development /usr/local/lib/php.ini

 - 나머지 설명은 아주 훌륭합니다. Thanks alot ~


php 컴파일, 인스톨 로그 마지막 부분

........................
Generating phar.php
Generating phar.phar
PEAR package PHP_Archive not installed: generated phar will require PHP's phar extension be enabled.
directorygraphiterator.inc
invertedregexiterator.inc
pharcommand.inc
clicommand.inc
directorytreeiterator.inc
phar.inc

Build complete.
Don't forget to run 'make test'.

Installing PHP SAPI module:       apache2handler
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apr/build-1/libtool' libphp5.la /usr/local/apache2/modules
/usr/local/apr/build-1/libtool --mode=install install libphp5.la /usr/local/apache2/modules/
libtool: install: install .libs/libphp5.so /usr/local/apache2/modules/libphp5.so
libtool: install: install .libs/libphp5.lai /usr/local/apache2/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish /root/installPack/php-5.4.9/libs'
chmod 755 /usr/local/apache2/modules/libphp5.so
[activating module `php5' in /usr/local/apache2/conf/httpd.conf]
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:          /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php/lib/php/
[PEAR] Archive_Tar    - installed: 1.3.7
[PEAR] Console_Getopt - installed: 1.3.0
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util       - installed: 1.2.1
[PEAR] PEAR           - installed: 1.9.4
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/root/installPack/php-5.4.9/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f /usr/local/php/bin/phar.phar /usr/local/php/bin/phar
Installing PDO headers:          /usr/local/php/include/php/ext/pdo/



root@turbine01:/etc/init.d# cat > /usr/local/apache2/htdocs/phpi.php

root@turbine01:/etc/init.d# 



테스트 페이지 ... : http://url/phpi.php