Netscape 와 iPlanet Enterprise 서버 설치

PHP를 NES 나 iPlanet 웹 서버에 설치하려면 --with-nsapi = DIR 옵션에 올바른 설치 디렉토리를 지정해 주면 된다. 보통 기본값은 /opt/netscape/suitespot/이다. /php-xxx-version/sapi/nsapi/nsapi-readme.txt 파일을 읽어보기 바란다.

예 3-7. Solaris에서 Netscape Enterprise에 설치하는 예

Sun Solaris 2.6 과 Netscape Enterprise Server 3.6 에서의 설치과정
From: bhager@invacare.com

1. www.sunfreeware.com 나 기타 다른 사이트에서 다음의 패키지들을 다운받아 설치한다.
    flex-2_5_4a-sol26-sparc-local 
    gcc-2_95_2-sol26-sparc-local 
    gzip-1.2.4-sol26-sparc-local 
    perl-5_005_03-sol26-sparc-local 
    bison-1_25-sol26-sparc-local 
    make-3_76_1-sol26-sparc-local 
    m4-1_4-sol26-sparc-local 
    autoconf-2.13 
    automake-1.4 
    mysql-3.23.24-beta (if you want mysql support) 
    tar-1.13 (GNU tar) 

2. 다음과 같이하여 PATH 환경변수에 원하는 경로들을 포함시킨다.
    PATH=.:/usr/local/bin:/usr/sbin:/usr/bin:/usr/ccs/bin 
    export PATH 

3. gunzip php-x.x.x.tar.gz (.gz 배포본일 경우, 아니면 4로 진행) 
4. tar xvf php-x.x.x.tar 
5. cd ../php-x.x.x 

6. 여기서는 /opt/netscape/suitespot/에 netscape 서버가 설치되어 있다고 가정한다.
   만약 다른 경로에 설치되어 있다면 그에 맞춰 경로명을 바꾸도록 한다. :
    ./configure --with-mysql=/usr/local/mysql --with-nsapi=/opt/netscape/suitespot/ --enable-track-vars --enable-libgcc 
7. make 
8. make install
이제 설치의 기초를 마쳤으면 적절한 readme 파일을 읽어보는 것이 좋다. 지금부터 시작될 추가적인 설정에 필요한 정보를 얻을 수 있을 것이다.

우선 Netscape가 모든 공유 라이브러리들을 찾을 수 있도록 LD_LIBRARY_PATH 환경변수에 원하는 경로들을 추가해주어야 한다. 이작업은 Netscape 서버에서 제공하는 start 스크립트를 사용하는 것이 가장 좋다. windows 사용자들은 이 과정을 생략할 수 있다. start 스크립트는 보통 다음 경로에 위치한다. : /path/to/server/https-servername/start

또한 다음에 위치한 설정파일을 수정하여야 한다. : /path/to/server/https-servername/config/.

예 3-8. Netscape Enterprise의 설정 예

Netscape Enterprise Server 에서의 설정 과정
From: bhager@invacare.com

1. mime.types에 다음 라인을 추가한다. :
    type=magnus-internal/x-httpd-php exts=php

2. obj.conf에 다음을 추가한다. shlib는 사용하는 OS에 따라 달라지는데,
   unix에서는 보통 /opt/netscape/suitespot/bin/libphp4.so의 형태를 취한다.

    
    다음 라인들은 mime types init뒤에 위치한다.
    Init fn="load-modules" funcs="php4_init,php4_close,php4_execute,php4_auth_trans" shlib="/php4/nsapiPHP4.dll"
    Init fn=php4_init errorString="Failed to initialize PHP!"

    <object name="default">
    . 
    . 
    . 
    .#NOTE 다음 라인은 모든 'ObjectType'보다 뒤에, 모든 'AddLog' 라인들보다 앞에 위치해야 한다.
    Service fn="php4_execute" type="magnus-internal/x-httpd-php" 
    . 
    . 
    </Object>


    <Object name="x-httpd-php"> 
    ObjectType fn="force-type" type="magnus-internal/x-httpd-php" 
    Service fn=php4_execute 
    </Object> 


    인증 설정 (authentication configuration)

    PHP의 인증은 다른 인증과 함께 사용될 수 없다. 모든 인증은 여러분이 작성한 PHP 스크립트로 넘어간다.
    서버 전체에 대해 PHP 인증을 설정하려면 다음 라인을 추가한다. :

    <Object name="default"> 
    AuthTrans fn=php4_auth_trans 
    . 
    . 
    . 
    . 
    </Object> 

    
    특정 디렉토리에 대해서만 PHP 인증을 설정하려면 다음을 추가한다. :

    <Object ppath="d:\path\to\authenticated\dir\*"> 
    AuthTrans fn=php4_auth_trans 
    </Object>