RedHat 5.x 사용자를 위한 Note
=============================

이 설명서는 RedHat 5.x 사용자를 위한 것이다.
알짜 리눅스 5.x는 RedHat 5.x와 동일하므로 동일하게 사용하여도 무방할 것이다.

여러분이 고전적인 방법으로 Apache를 설치하였다면 기존의 PHP 설치 설명서대로
사용하면 된다. 하지만 여러분이 RedHat의 RPM 패키지와 RedHat의 컨트롤 프로그램을
그대로 사용하고 싶다면 여기에 나와있는 설명대로 하는 것이 좋을 것이다.

여러분이 사용하는 Apache의 버젼은 최소한 1.3.4는 되어야 한다. 
현재 apache-1.3.4의 rpm은 glibc-2.1을 사용하고 있으므로 이 또한 있어야 할 것이다.
RH-5.1과 RH-5.2의 기본 배포판 CD에는 보통 포함되 있으므로 별 문제 없을 것이나,
만약 없다면 다음 사이트에서 구하면 된다. :

   http://www.lerdorf.on.ca/apache/

물론 PHP도 필요하다. PHP rpm도 배포판 CD에 있지만 이것은 데이타베이스 지원을 포함한
여러가지 확장 라이브러리가 제외된 바이너리 형태이기 때문에 대부분의 경우 tar형태의 
소스를 다운받아서 사용한다. 다음과 같이 설치하면 된다. :

Step 1: 만약 기존의 Apache 패키지가 있으면 제거한다.

     rpm -e apache
     rpm -e apache-devel

Step 2: 새 Apache 패키지를 설치한다.

     rpm -i apache-1.3.4-1.i386.rpm
     rpm -i apache-devel-1.3.4-1.i386.rpm

Step 3: 사용하기를 원하는 PHP 확장을 정해준다.

     ./configure --help

위의 명령을 사용하면 사용가능한 option을 보여준다. 각 확장에 대한 자세한 내용은
매뉴얼의 "PHP 확장(PHP Extensions)"편을 보도록 한다.

Step 4: PHP를 만든다.

일반적으로 전형적인 설정 명령은 다음과 같은 형태를 가진다. :

     ./configure --with-apxs=/usr/bin/apxs --with-mysql --with-ldap

설정 후 다음과 같이하여 만든다:

     make
     make install

위의 'make install'은 다음의 동작들과 비슷한 동작을 한다. :

     /usr/bin/apxs -i -a -n php3 libphp3.so
     cp libphp3.so /usr/lib/apache/libphp3.so
     chmod 755 /usr/lib/apache/libphp3.so
     [/etc/httpd/conf/httpd.conf안의 `php3' module을 활성화한다. ]

이제 여러분은 Apache 서버를 재시작하여야 한다.

     /etc/rc.d/init.d/httpd restart

     NOTE: 만약 여기서 libphp3.so 파일이 없다는 에러 메세지가 나오면,
           아마도 아직도 RedHat의 원래 apache-1.3.4 rpm을 사용하고 있을 것이다.
           다음과 같이하여 고친다. :
  
           ln -s /usr/lib /etc/httpd

           위와 같이 고친 후 아래의 명령으로 시작 한다.

           /etc/rc.d/init.d/httpd start
         
Step 5: 설정을 확인한다.

     document root 디렉토리에 info.php3같은 php3파일을 만든다. 이 파일의 내용은 다음과
     같다. :

     <?phpinfo()?>

     이제 브라우져로 이 파일을 읽어보자.:

     http://여러분의.시스템/info.php3

     아마 여러분이 해 놓은 설정에 관한 정보들이 요약되 보여지게 된다. 잘 보이면 보안을 
     위해 이 파일은 지워두는 것이 좋지만, 이 내용은 개발이나 디버깅시에 유용하게 사용된다.


PHP 확장(PHP Extensions)
========================

어떤 경우에도, PHP를 새로운 옵션으로 재 설정하기전에 'config.cache' 파일은 지워주는 것이
좋다.

Package                   Suggested ./configure swicth
-------                   ----------------------------

GD                        <none>
    standard gd-devel RPM이 설치되어 있어야 한다. PHP는 gd-devel RPM이 설치되어 있으면
    자동적으로 이를 감지하여 이를 지원하도록 설정한다.

FreeType (libttf)         <none>
    freetype과 freetype-devel의 RPM들이 설치되어 있어야 한다. 이 파일들은 RedHatContrib 
    미러 사이트에서 구할 수 있다. PHP를 설치하면 자동으로 TTF에 필요한 것들이 있는가 감지하여
    이를 지원하도록 한다. TTF를 지우너하려면 GD가 필효하다는 것도 알아두자.

ImageMagick               -with-imagick
    bzip2 RPM과 ImageMagick-devel-4.2.0-1 RPM이나 그 이상의 버젼이 필요하다.

IMAP                      --with-imap
    최근의 imap-devel RPM을 RedHatContrib 미러 사이트에서 구해 설치하여야 한다.

LDAP                      --with-ldap
    최근의 openldap-libs와 openldap-devel RPM들을 RedHatContrib 미러 사이트에서 구할 수 있다.

mSQL                      --with-msql=/usr/lib/Hughes
    최근의 msql RPM 을 RedHatContrib 미러 사이트에서 구할 수 있다.

MySQL                     --with-mysql
    최근의 rpm 패키지를 http://www.tcx.se나 미러 사이트에서 구할 수 있다.
    MySQL과 MySQL-client, MySQL-devel의 3개의 패키지를 모두 설치할 필요가 있으나, PHP의 MySQL 
    지원을 위한 컴파일에는 MySQL-devel RPM만 있으면 된다.

PostgreSQL                --with-pgsql
    postgresql-devel RPM이 필요하다.

SNMP                      --with-snmp
    ucd-snmp-devel RPM이 필요하다.

YP                        --with-yp
    libnsl은 이것을 위한 여러가지 함수를 가지고 있고, 미리 설치되어 있어야 한다.
    이 라이브러리는 보통 glibc-devel RPM의 일부이다.

Zlib                      --with-zlib
    standard zlib-devel RPM (version >= 1.0.9)이 설치되어 있어야 한다.