제가 제 테스트 서버에 설치하면서  
yekdm@hotmail.com님의문서를 참조하여 제게 맞게 수정한것입니다. 
확인은 http://10.80.5.40/phpinfo.php 에서 확인하실수 있습니다. 
 
 
###리눅스(redhat9.0)에서 아파치(2.0.48) + php(4.3.4) + mysql(4.0.17) + ZendOptimizer(2.1.0b)설치하기 
 
1. mysql binary 설치 (mysql은 세가지 방법으로 설치할수 있다. rpm,binary,source) 
 
+ 기존 rpm 설치여부 
shell> rpm -qa | grep mysql 
 
+ rpm 제거 의존성 있는거부터 먼저 지운다. 
shell> rpm -e mysql 
 
 
배포파일 mysql-standard-4.0.17-pc-linux-i686.tar.gz 
 
+ 받은 파일을 적당한 위치 (예: /usr/local/src) 로 이동시켜서 압축을 풀어줍니다. 
 
shell> mv ./mysql-standard-4.0.17-pc-linux-i686.tar.gz /usr/local/src 
shell> tar xvfz mysql-standard-4.0.17-pc-linux-i686.tar.gz 
 
+ 압축풀린디렉토리를 /usr/local에 mysql이라는 이름으로 이동한다. 
shell> mv /usr/local/src/mysql-standard-4.0.17-pc-linux-i686 /usr/local/mysql 
 
+ 해당 디렉토리로 이동한다. 
shell>cd /usr/local/mysql 
 
+ mysql 기본테이블들을 생성시켜준다. 
shell> scripts/mysql_install_db 
 
+ 디렉토리 권한을 설정한다./usr/local 디렉토리에서 
shell> chown -R mysql.mysql mysql  
 
+ mysql계정을 사용자 및 그룹계정에 추가한다. 
shell> /usr/sbin/groupadd mysql 
shell> /usr/sbin/useradd -g mysql mysql 
 
+ Mysql을 실행시킵니다. 
shell> bin/mysqld_safe --user=mysql & 
 
+ 시스템 부팅시 자동적으로 Mysql을 실행하고자 할 경우에는  
- support-files/mysql.server 파일을 /etc/rc.d/init.d 디렉토리로 copy 합니다. 
 
- /etc/rc.d/rc0.d에는 K01mysql이라는 이름으로 /etc/rc.d/rc3.d에는 S90mysql이라는 이름으로  
symbolic link를 만들어줍니다 
shell> ln -s /etc/rc.d/init.d/mysql.server /etc/rc.d/rc0.d/K01mysql 
shell> ln -s /etc/rc.d/init.d/mysql.server /etc/rc.d/rc3.d/S90mysql 
 
 
2. 아파치 설치 
 
+ 기존 패키지 찾아서 삭제 
shell> rpm -qa | grep httpd 
shell> rpm -e [httpd RPM name] 
 
+ 현재 Apache 웹데몬이 실행되고 있다면 실행을 중지시킵니다. 
shell> /etc/init.d/httpd stop 
 
+ 배포파일 httpd-2.0.48.tar.gz 
적당한 위치에서 다운로드 받은 배포파일의 압축을 풉니다. 
shell> mv httpd-2.0.48.tar.gz /usr/local/src 
shell> tar xvfz httpd-2.0.48.tar.gz 
 
생성된 디렉토리 httpd-2.0.48로 이동합니다. 
shell> cd httpd-2.0.48 
 
+ configure를 진행한다. 
shell> ./configure --prefix=/usr/local/apache  
		--enable-rule=SHARED_CORE  
		--enable-modules=so --enable-so 
 
--enable-rule=SHARED_CORE 
Apache 컴파일시 rule을 지정합니다.  
SHARED_CORE는 DSO(Dynamic Shared Objects, 동적공유객체)를 사용할 수 있는 형태로  
Apache를 컴파일하도록 하는 일종의 규칙입니다.  
이 옵션을 지정해주면 DSO로 컴파일된 아파치에서 제공하지 않는 외부 모듈들을 선택적으로 사용할 수 있게 됩니다. 
기본형은 --enable-rule=[RULE-NAME]으로 [RULE-NAME]에 해당하는 컴파일 규칙을 enable시킵니다.  
--help 옵션으로 나타나는 도움말에서는 이 옵션을 표시하고 있지 않습니다. 
 
--enable-modules=so 
mod_so(so_module)를 Apache에 컴파일하여 포함시킵니다.(모듈의 정적 컴파일) 
기본형은 --enable-modules=[MODULE-LIST]로  
공백으로 구분한 [MODULE-LIST]에 나와있는 모듈들을 컴파일하여 포함합니다. 
 
--enable-so 
Apache가 실행시 특별한 옵션없이 자동으로 동적공유객체(DSO-Dynamic Shared Objects)를  
읽어들일 수 있도록 하기 위한 설정옵션입니다. 
 
 
 
+ 이어서 컴파일과 인스톨을 실행합니다. 
shell> make 
shell> make install 
 
+ 웹데몬을 실행해본다. 
shell> /usr/local/apache/bin/apachectl start 
httpd: Could not determine the servers fully qualified domain name, using 127.0 
.0.1 for ServerName 
 
이 메시지는 /usr/local/apache/conf/httpd.conf 설정파일을 수정하지 않았기 때문에 표시되는 것입니다. 
 
+ 부팅시 자동으로 httpd 데몬이 실행되도록 합니다. 
shell>cp -p /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd  
shell>cp -p /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld  
shell>cd /etc/rc.d/rc3.d  
shell>ln -s /etc/rc.d/init.d/httpd S85httpd  
shell>ln -s /etc/rc.d/init.d/mysqld S97mysqld  
 
 
+ 마지막으로 /etc/httpd/conf/httpd.conf 파일의 설정을 변경합니다. 
기본적으로 변경해야할 부분은 
#servername www.example.com:80 
으로 #을 제거하고 www.example.com을 웹서버의 domain name으로 수정해 주거나 localhost로 적어줍니다. 
 
+ 한글을 지원하기 위해서 AddDefaultCharset ISO-8859-1 부분을 찾아서 AddDefaultCharset utf8 또는  
AddDefaultCharset euc_kr 로 변경합니다. 
 
3. php 설치 
 
배포파일 php-4.3.4.tar.gz 
 
+ 기존에 PHP가 RPM으로 설치되어있는지 확인한 후 설치되어 있으면 RPM을 제거합니다. 
shell> rpm -qa | grep php 
shell> rpm -e (--nodeps) [php RPM name] 
 
+ 배포파일을 적당한 위치로 옮긴 후 압축을 풀어줍니다. 
shell> mv php-4.3.4.tar.gz /usr/local/src 
shell> cd /usr/local/src 
shell> tar xvfz php-4.3.4.tar.gz 
 
+ 압축을 풀면 php-4.3.4 디렉토리가 생성됩니다. 
디렉토리 안으로 이동하여 configure를 실행시킵니다. 
shell> cd ./php-4.3.4 
shell> ./configure -prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/etc --with-zlib --with-gd --with-mysql=/usr/local/mysql --with-mod-charset --with-language=korean --with-charset=euc_kr --enable-ftp --enable-sockets --enable-track-vars --enable-mbstring=all --with-freetype-dir=/usr/local/include/freetype2 --with-mcrypt=/usr/local/mcrypt --with-mhash=/usr/local/mhash --disable-posix-threads 
	 
+ 위의 옵션으로 실행했을 때 libpng.(a|so)를 찾을 수 없다는 오류가 발생할 수 있습니다.  
이 때에는 --with-gd 옵션을 제거하고 실행하거나  
http://ftp.redhat.com/pub/redhat/linux/9/en/os/i386/RedHat/RPMS/ 에서  
libpng-devel-1.2.2-16.i386.rpm을 다운로드 받아서 설치한 후 실행하기 바랍니다.  
 
+ 컴파일과 인스톨을 진행합니다. 
shell> make 
shell> make install 
 
+ php.ini-dist를 /etc에 php.ini 로 이름을 변경하여 복사합니다.  
	 
+ 마지막으로 Apache 웹서버와 PHP 모듈과의 연동을 위해서 /etc/httpd/conf/httpd.conf 파일을 수정해줍니다.  
PHP install(make install 과정)시 모듈을 load하는 부분이 httpd.conf 파일에 자동으로 추가됩니다.  
다음 부분이 httpd.conf 파일에 기록되어 있는지 확인합니다. 
LoadModule php4_module	lib/apache/libphp4.so 
이부분이 없을 경우 Dynamic Shared Object (DSO) Support 부분에 추가합니다. 
 
+ AddType 부분으로 이동해서 다음을 추가합니다. 
AddType application/x-httpd-php .php .phtml 
AddType application/s-httpd-php-source .phps 
 
+ DirectoryIndex 부분을 찾아 index.php와 index.phtml을 추가합니다. 
DirectoryIndex index.html index.html.var index.php index.phtml 
 
+ httpd 데몬을 재실행합니다. (Apache 웹서버를 재가동시킵니다.) 
shell> /etc/init.d/httpd restart 
 
+ /usr/local/apache/htdocs 디렉토리 내에서 다음과 같은 코드를 작성하여 웹브라우저를 통해 확인해봅니다. 
shell> vi phpinfo.php 
<? 
phpinfo(); 
?> 
 
PHP를 재설치하거나, 업그레이드하거나 또는 패치할 경우  
config.cache 파일을 삭제한 후 위와 동일한 과정으로 진행합니다. 
 
 
4. ZendOptimizer 설치 
배포파일 ZendOptimizer-2[1].1.0b-Linux_glibc21-i386.tar.gz 
 
+ 배포파일을 적당한 위치로 옮겨서 압축을 풀어준다. 
shell> mv ZendOptimizer-2[1].1.0b-Linux_glibc21-i386.tar.gz /usr/local/src 
shell> tar xvfz ZendOptimizer-2[1].1.0b-Linux_glibc21-i386.tar.gz 
 
+ ZendOptimizer-2.1.0b-Linux_glibc21-i386 디렉토리가 생성되어 압축이 풀립니다. 이 디렉토리로 이동합니다. 
shell> cd ZendOptimizer-2.1.0b-Linux_glibc21-i386 
 
+ 다음의 명령을 실행시킵니다. 
shell> ./install.sh 
 
화면에 GUI 환경이 나타나면서 install이 진행됩니다.  
각 과정은 자동으로 이루어지며 마지막으로 Apache 웹서버를 재구동시켜줍니다.  
설치는 /usr/local/Zend 경로에서 이루어집니다.  
기존의 /etc/php.ini 파일은 /etc/php.ini-zend_optimizer.bak 으로 이름이 변경되고  
php.ini 파일이 /usr/local/Zend/etc 안에 생성되며  
/etc 디렉토리 안에는 이 /usr/local/Zend/etc/php.ini 의 symbolic link 파일이 만들어져  
실제 php.ini 파일과 연결됩니다.  
모든 과정이 끝나면 Zend Optimizer가 성공적으로 설치된 것입니다.  
 
 
  
	
	
		날짜: 2004-01-14 18:19:58,
	조회수: 3553	  |