푸른청년 푸르게 살고있나?  
home | 살아가기 | news | 세상보기 | tip&tech | 방명록 |  
   전체
   asp
   php
   jsp
   mssql
   mysql
   informix
   linux
   unix
   win2000
   javascript
   html
   oracle
   java
   etc
    
:: Tip&Tech
래드햇9.0 + 아파치2.0 + php4.3.4 + mysql4.0.17 + Zend2.1 설치하기
제가 제 테스트 서버에 설치하면서 
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, 조회수: 2891

다음글 [asp]게시판에서 이미지가 클때 사이즈 깨짐 없이 조절하기
이전글 [리눅스]rsync를 이용한 원격 미러링

꼬리말
글쓴이 비밀번호 #스팸글방지(주인장 닉네임을 쓰시오)

재설치하고 싶으면 해당 설치파일 디렉토리에서 make clean 한뒤 다시 컴파일

2005-04-23 12:32:48


  
since by 2003.03.23 / 3th 2005.07.26 / 4th 2009.04.22 made by bluesoul