幸福伝説

APM(apache, php, mysql) 설치 본문

Unix_Linux/기타

APM(apache, php, mysql) 설치

행복전설 2008. 6. 23. 00:30
출처 : http://blog.naver.com/mudo?Redirect=Log&logNo=17351386

IDC 센터 나와서 오랜만에 친구들 좀 만나고 집에 왔다.

리눅스 서버로 설치한 만큼 멋지게 APM을 설치해 보자.

하도 오랜만에 하는거라 PHPSCHOOL , kldp.org , database.sarang.net 등에서

각종 정보들을 수집했다.



일단 아래와 같은 패키지 및 타르볼을 설치할 것이다.



http://mysql.com - mysql-standard-4.1.14-pc-linux-gnu-i686.tar.gz
http://apache.org - httpd-2.0.54.tar.gz

http://kr2.php.net/get/php-5.0.4.tar.gz/from/this/mirror - php-5.0.4.tar.tar
freetype-devel-2.1.3-6.i386.rpm
http://www.rime.com.au/gd/ - gd-2.0.26gif.tar.gz
libjpeg-devel-6b-26.i386.rpm
libpng-devel-1.2.2-16.i386.rpm
http://ftp.acc.umu.se/pub/gnome/sources/libxml2/2.6/libxml2-2.6.10.tar.gz - libxml2-2.6.10.tar.gz
https://www.zend.com/ 로그인해야 됨. ZendOptimizer-2.5.10a-linux-glibc21-i386.tar.gz
http://www.zlib.net/zlib-1.2.3.tar.gz zlib-1.2.3.tar.tar



풀 패키지로 설치 한줄 알았는데 아닌가...흠...하튼 주소가 없는 것들은 rh9 CD 2 에 들어 있는 것들이다. 왜 저게 필요하냐 하면 저게 없으면 php 설치가 안되고 GD 설치하는 부분에서 멈춰서

configure: error: libjpeg.(a|so) not found. 이런 종류의 에러가 난다.

뭐 이거 말고도 다양하다...위에 lib~devel 들이 없으면 이런 에러가 난다.주의..

젠장 이 에러 때문에 몇시간을 허비 했는지 모른다...킁..



자 다운 받은 것들이랑 씨디에서 끄집어 낸것들이랑 전부

/usr/local/src 로 집어 넣자.

$ cd /usr/local/src

$ rz (혹 누가 Zmodem 으로 하면 파일이 깨진다고 하던데...나는 그런적이 한번도 없다. 파일이 깨지는 사람은 아마 약속을 자주 어겨서 벌을 받는 모양이다.캬캬캬캬캬)



1. MySQL 먼저 설치해보자.

특별히 설정을 변경하거나 하지 않을거라면 그냥 바이너리를 그대로 옮겨 버리는게 편하다.

MySQL 컴파일 해본 사람은 알겠지만 컴파일 하는 시간이 엄청 걸린다. 대략 20분? 시스템에 따라 다르다...



$ groupadd mysql
$ useradd -g mysql mysql
$ cd /usr/local/src
$ tar zxvpf mysql-standard-4.1.14-pc-linux-gnu-i686.tar.gz
$ mv mysql-standard-4.1.14-pc-linux-gnu-i686 /usr/local/mysql
$ cd /usr/local/mysql
$ scripts/mysql_install_db --user=mysql (반드시 /usr/local/mysql 위치에서 실행)
$ chown -R root .
$ chown -R mysql data
$ chgrp -R mysql .
$ bin/mysqld_safe --user=mysql& <- 예전처럼 safe_mysqld --user=mysql& 해서 실행해도 된다. 친절?하게도 소프트링크를 잘 걸어놨다. 왜 바꾼건지..쩝..
$ bin/mysqladmin shutdown 다른거 설치를 위해 꺼두자.



2. GD 라이브러리, libxml2, zlib 설치

자, 설치하기 전에 아래 있는 파일들을 rpm -Uvh 옵션으로 하나씩 설치해주자.

$rpm -Uvh freetype-devel-2.1.3-6.i386.rpm
$rpm -Uvh libjpeg-devel-6b-26.i386.rpm
$rpm -Uvh libpng-devel-1.2.2-16.i386.rpm



$ tar xvfz gd-2.0.26gif.tar.gz
$ cd gd-2.0.26gif
$ ./configure

$ make
$ make install



$ tar xvfz libxml2-2.6.10.tar.gz

$ cd ./libxml2-2.6.10
$ ./configure
$ make
$ make install



$ tar xvfz zlib-1.2.3.tar.gz

$ cd ./zlib-1.2.3
$ ./configure
$ make
$ make install


주루룩..주루룩..설치 잘된다..GD는 아파치,php 설치 바로 직전에 하는게 좋다. 그냥 경험상 그런거 같더라는 것이지. 뭐 별 이론은 없다.

혹시 설치 에러가 나면 다른 버전을 구해서 깔아 보자.

깔기 전에 설치한것을 삭제 하기 위해

$make uninstall

$make clean 한번 해주면 된다.



3. Apache 설치



$ tar xvfz httpd-2.0.54.tar.gz

$ cd httpd-2.0.54

$ ./configure --prefix=/usr/local/apache --enable-rule=SHARED_CORE --enable-modules=so --enable-so <- 옵션이 궁금한 사람은 찾아 봐라..찾으라..나올 것이다.

$ make
$ make install

$ vi /usr/local/apache/conf/httpd.conf 를 편집.



DirectoryIndex index.html, index.php


Section 2의 단락에서 아래 내용을 추가.
................................

# And for PHP 4.x, use:
AddType application/x-httpd-php .php .php3 .inc .ph .htm .html
AddType application/x-httpd-php-source .phps


port 80 이거는 Listen 80 으로 대체 되었다. (첨에 port 설정이 없어서 한참 찾았다..특별히 바꿀거는 아니지만 늘 보이던게 없어져서;;)

servername 도 잘 적어 주자. 주석처리 하지 말고;;



$ /usr/local/apache/bin/apachectl start 아파치를 실행.



여기서 http://서버네임/해서 아파치가 잘 설치가 되었는지 확인해 보자.

$ ps aux 로 확인결과 [httpd] 데몬도 잘 띄워져 있고

$ telnet localhost 80 으로 접속해도 아파치 기본 페이지가잘 나오지만

http:// 로 보면 안나왔다. 원인을 몰라 한참 헤맸다. ;;



rh9 에서 기본적으로 iptables 이 설치되어 있는데, 기본적으로 몇개 포트외에는 전부 막아 놨다.;;

으~~~~~ 그것도 모르고 하루죙일 아파치만 한 열번은 다시 설치한거 같다. 으~~~

$ iptables -F 로 기본설정으로 초기화 해주자. 이거면 될 것을...;;ㅜㅜ



$ /usr/local/apache/bin/apachectl stop php설치를 위해 중지시킴.



4. PHP(5.0.4)



$ tar zxvfp php-5.0.4.tar.gz
$ cd php-5.0.4



$ ./configure --prefix=/usr/local/php --with-exec-dir=/usr/bin --with-apxs2=/usr/local/apache/bin/apxs --with-apache-install=/usr/local/apache --with-mysql=/usr/local/mysql --with-config-file-path=/etc --disable-debug --enable-safe-mode --enable-track-vars --enable-sockets --with-png-dir=/usr/lib --with-freetype-dir=/usr/include/freetype2 --with-mod_charset --with-charset=euc_kr --with-xml --with-language=korean --enable-mailparse --enable-calender --enable-sysvsem=yes --enable-sysvshm=yes --enable-ftp --enable-magic-quotes --enable-gd-native-ttf --enable-versioning --enable-url-includes --enable-trans-id --enable-inline-optimization -enable-bcmath --with-jpeg --with-png --with-zlib --with-jpeg-dir=/usr/src --with-xpm-dir=/usr/local/src/xpm-3.4g --with-gd --with-ttf--with-gettext --enable-sigchild --enable-module=so --with-libxml-dir=/usr/local/src/libxml2-2.6.10 --with-zlib-dir=/usr/local/src/zlib-1.2.3



혹시 configure: error: xpm.h not found. 나는 사람? 없나 - _-
옵션에 --with-xpm-dir=/usr/local/src/xpm 같이 xpm 설정을 해준사람은 삭제 하기 바란다. 별루 쓰이지도 않고 쓰는 사람도 없고 설치하기도 까다롭다.^^


$./configure --prefix=/usr/local/php --with-exec-dir=/usr/bin --with-apxs2=/usr/local/apache/bin/apxs --with-apache-install=/usr/local/apache --with-mysql=/usr/local/mysql --with-config-file-path=/etc --disable-debug --enable-safe-mode --enable-track-vars --enable-sockets --with-png-dir=/usr/lib --with-freetype-dir=/usr/include/freetype2 --with-mod_charset --with-charset=euc_kr --with-xml --with-language=korean --enable-mailparse --enable-calender --enable-sysvsem=yes --enable-sysvshm=yes --enable-ftp --enable-magic-quotes --enable-gd-native-ttf --enable-versioning --enable-url-includes --enable-trans-id --enable-inline-optimization -enable-bcmath --with-jpeg --with-png --with-zlib --with-jpeg-dir=/usr/src --with-gd --with-ttf--with-gettext --enable-sigchild --enable-module=so --with-libxml-dir=/usr/local/src/libxml2-2.6.10 --with-zlib-dir=/usr/local/src/zlib-1.2.3



이렇게 하면 무사히 설치...
$ make
$ make install
$ cp /usr/local/src/php-5.0.4/php.ini-dist /etc/php.ini <- 젠트 옵티마이저 설치시 경로를 묻는다.
$ vi /etc/php.ini


참고 :
변경전 : register_globals = OFF
변경후 : register_globals = ON

이거에 대한 논란은 PHPSCHOOL.COM 에서 확인하기 바란다.



확인 사항
default_mimetype = "text/html"
default_charset = "euc_kr"
위와 같이 되어 있지 않으면 한글이 깨어 져서 나온다



아파치 모듈 인식 확인

$vi /usr/local/apache/conf/httpd.conf

LoadModule php5_module modules/libphp5.so 자동으로생김

특별히 확인 안해봐도 된다...



5. Zend Optimizer



압축 풀고....
$cd /usr/local/src/ZendOptimizer-2.5.10a-linux-glibc21-i386

$ ./Install.sh

간단한 내용의 질문을 읽고 환경에 맞게 입력. 꽤나 비쥬얼하고 설치 하기 쉽게 해 놓았다.





6. 마무리

$ vi /usr/local/apache/htdocs/info.php




phpinfo();

?>



저장하고 빠져나온후 http://서버네임/info.php

해서 PHP information 화면이 나오면 완료.





설치 완료!!


여기에 이글을 올려야 할지 망설였지만 저보다 초보가 있을듯 하고, 또한 저역시 이걸 설치하기 위해 삽질을 하였기에 이런 삽질이 두번다시 이뤄지지 않도록 이글을 씁니다.

라고 서명을 밝힌 phpschool.com 매너굿인기짱 (http://flsamo.com)님의 글을 많이 인용하였다.

다음 시간에는 각 서비스별 한글 캐릭터세트로 맞추는 것과 보안 설정에 대해서 알아 보자.

밥 먹으러가야징...

'Unix_Linux > 기타' 카테고리의 다른 글

[요약] 정적 라이브러리, 공유 라이브러리  (0) 2008.06.23
Apache2.0.52 + PHP5.0.3 + MySQL4.1.7 설치하기  (0) 2008.06.23
linux partition  (0) 2008.06.23
Ztrem 1.41  (0) 2008.06.23
PuTTY: A Free Telnet/SSH Client  (0) 2008.06.23