현존하는 최고의 웹스크립트 언어인 PHP를 아파치와 연동하는 작업을 해볼 것이다.
어떠한 버젼을 설치하는 것이 좋을까 고민하다가 5.5.x를 선택했다. 혹시나 5.4나 5.6를 원한다면 그걸 받아서 설치해도 된다.
[PHP 소스를 컴파일 하기 위해서 필요한 라이브러리 설치]
yum install libxml* yum install bzip2-devel yum install curl-devel yum install gdbm-devel yum install libjpeg-devel yum install libpng* yum install freetype-devel
[mhash 설치]
http://sourceforge.net/projects/mhash/files/mhash/ 에서 mhash-0.9.9.9.tar.bz2를 다운로드
압축을 해제한다
tar xvf mhash-0.9.9.9.tar.bz2
디렉토리를 이동한다.
cd mhash-0.9.9.9
컴파일에 필요한 환경설정을 한다.
./configure
컴파일 시작
make
컴파일하여 생성된 바이너리 코드를 설치한다.
make install
[libmcrypt 설치]
http://sourceforge.net/projects/mcrypt/files/Libmcrypt/Production/ 에서 libmcrypt-2.5.7.tar.gz를 다운로드
압축을 해제한다
tar xvfz libmcrypt-2.5.7.tar.gz
디렉토리를 이동한다.
cd libmcrypt-2.5.7
컴파일에 필요한 환경설정을 한다.
./configure
컴파일 시작
make
컴파일하여 생성된 바이너리 코드를 설치한다.
make install
맨 아래에 /usr/local/lib 추가
vi /etc/ld.so.conf ldconfig
[mcrypt 설치]
http://sourceforge.net/projects/mcrypt/ 에서 crypt-2.6.8.tar.gz를 다운로드
압축을 해제한다
tar xvfz mcrypt-2.6.8.tar.gz
디렉토리를 이동한다.
cd mcrypt-2.6.8
컴파일에 필요한 환경설정을 한다.
./configre
컴파일 시작
make
컴파일하여 생성된 바이너리 코드를 설치한다.
make install
[php 설치]
php.net에 접속해서 5.5.19를 다운 받아서 /usr/local/src 디렉토리로 옮긴다
압축을 해제한다.
tar xvfz php-5.5.19.tar.gz2
디렉토리를 이동한다.
cd php-src-php-5.5.19
컴파일 옵션을 주어 환경 설정한다.
./configure --prefix=/usr/local/php \ --with-apxs2=/usr/local/apache/bin/apxs \ --enable-mod-charset \ --with-charset=utf8 \ --with-config-file-path=/usr/local/apache/conf \ --enable-sigchild \ --with-libxml-dir \ --with-openssl \ --with-zlib \ --with-zlib-dir \ --with-bz2 \ --enable-calendar \ --with-curl --enable-dba \ --with-gdbm \ --enable-exif \ --enable-ftp \ --with-gd \ --with-jpeg-dir \ --with-png-dir \ --with-freetype-dir \ --enable-gd-native-ttf \ --with-gettext \ --with-imap-ssl \ --with-kerberos \ --enable-mbstring \ --with-mhash \ --with-mcrypt \ --with-mysql=/usr/local/mysql \ --with-mysqli=/usr/local/mysql/bin/mysql_config \ --enable-sockets \ --with-regex=php \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-soap \ --enable-zip \ --enable-wddx
컴파일을 시작한다.
make
생성된 바이너리 코드를 설치한다.
make install
php 소스 디렉토리에서 기본 제공되는 ini환경 화일을 php가 설치된 디렉토리로 복사한다.(실제 사용을 위해서는 화일 업로드시 제한용량이라던가 약간의 설정작업이 필요하다)
cp /usr/local/src/php-5.5.19/php.ini-development /usr/local/php/lib/php/php.ini
php.ini 화일 수정을 자주 다뤄야 하므로 아파치가 설치된 디렉토리로 링크를 걸어준다.
ln -s /usr/local/php/lib/php/php.ini /usr/local/apache/conf/
php 확장자를 처리할 수 있도록 해야 하기 때문에 아래와 같이 vi 에디터로 httpd.conf화일을 열어야 한다.
vi /usr/local/apache/conf/httpd.conf
php 확장자를 처리할 수 있도록 ... 사이에 아래 두줄을 삽입한다.
AddType application/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc AddType application/x-httpd-php-source .phps
아파치 웹서버를 재시작 해준다.
/usr/local/apache/bin/apachectl restart
php 스크립트가 잘 동작하는지 확인하기 위해서 phpinfo() 함수를 실행해본다.
같은 네트워크에 있는 다른 컴퓨터를 이용하여 접속을 해본다. 아래와 같은 화면을 본다면 성공한것이다. 연결이 안된다면 방화벽을 확인해봐야 할 것이다.
vi /usr/local/apache/htdocs/phpinfo.php
실제 웹서버를 운영하기 위해서는 아파치의 버추얼 호스트와 php.ini화일의 수정이 필요하다.
* 참고 : PHP 5.6.5를 위 방법과 옵션을 이용해서 설치했는데 그누보드 5 설치도 잘 되었고, 동작도 잘 하였다.
새댓글 등록