Apache HTTP Server 대신 IBM HTTP Server 사용

관리 콘솔로 IHS(IBM HTTP Server)를 사용하도록 구성하는 것이 가능하지만, 빌트인 Apache HTTP Server 사용을 권장합니다.

시작하기 전에

이 태스크 정보

이 주제는 다음과 같은 태스크를 수행하는 방법에 대해 설명합니다.

  1. 사전 컴파일된 PHP 파일을 설정하십시오.
  2. Build Forge 웹 애플리케이션을 지정하도록 IBM HTTP Server 구성 파일을 수정하십시오.
  3. 프록시 서버를 사용하여 데이터베이스에 액세스하는 경우 프록시 서버를 사용하도록 PHP를 수정하십시오.
  4. SSL을 사용하는 경우 SSL을 통해 Build Forge에서 작업하도록 IHS를 구성하십시오.
  5. Windows 시스템: IBM HTTP Server 설치 디렉토리의 libeay32.dll을 대체하십시오.
  6. AIX 시스템: 추가 설정

사전 컴파일된 PHP 파일 설정

이 태스크 정보

이 태스크는 제공된 PHP 파일을 찾아서 지정된 위치에 복사하는 방법에 대해 설명합니다. 파일 디렉토리는 다음과 같습니다.

  • Windows 시스템
    <bfinstall>\ihs_modules
  • UNIX 및 Linux 시스템
    <bfinstall>/Platform/ihs_modules

프로시저

  1. PHP 모듈을 복사하십시오. 필요한 경우 modules 디렉토리를 작성하십시오.
    • Windows 시스템
      cd <bfinstall>\ihs_modules\modules\
      copy *.dll C:\Program Files\IBM\HTTPServer\modules
    • UNIX 및 Linux 시스템
      cd <bfinstall>/Platform/ihs_modules/modules
      cp libphp5.so /opt/IBM/HTTPServer/modules
  2. PHP 확장기능을 복사하십시오. 필요한 경우 extensions 디렉토리를 작성하십시오.
    • Windows 시스템
      cd <bfinstall>\ihs_modules\lib\php\extensions\
      copy *.dll C:\Program Files\IBM\HTTPServer\extensions
    • UNIX 및 Linux 시스템
      cd <bfinstall>/Platform/ihs_modules/lib/php/extensions/no-debug-zts-20090626
      cp *.so /opt/IBM/HTTPServer/extensions
  3. 제공된 php.ini 파일을 복사하십시오. 필요한 경우 conf 디렉토리를 작성하십시오.
    • Windows 시스템
      cd <bfinstall>\ihs_modules
      copy php.ini C:\Program Files\IBM\HTTPServer\conf
    • UNIX 및 Linux 시스템
      cd <bfinstall>/Platform/ihs_modules
      cp php.ini /opt/IBM/HTTPServer/conf
  4. conf 디렉토리에 복사한 php.ini 파일을 편집하여 extensions 디렉토리에 포인터를 포함시키십시오. 다음 행을 추가하거나 대체하십시오.
    • Windows 시스템
      extension_dir = C:\Program Files\IBM\HTTPServer\extensions
    • UNIX 및 Linux 시스템
      extension_dir = /opt/IBM/HTTPServer/extensions
  5. php.ini 파일을 시스템에 대한 정보로 편집하십시오. Apache HTTP Server를 위해 제공된 php.ini 파일을 안내서로 사용할 수 있습니다. 이 파일은 다음 위치에 제공되어 있습니다.
    • Windows 시스템
      <bfinstall>\Apache\php\php.ini
    • UNIX 및 Linux 시스템
      <bfinstall>/server/apache/conf/php.ini
  6. php.ini에서 사용되는 모든 디렉토리에 대한 쓰기 액세스를 추가하십시오.. UNIX 및 Linux 시스템에서는 디렉토리에 대해 다음 명령을 실행하십시오.
    chmod -R 777

IBM HTTP Server 구성 파일 편집

프로시저

  1. 서버 설치의 conf 디렉토리에서 IHS(IBM HTTP Server)에 대한 httpd.conf 파일을 찾으십시오.
  2. 예제에 표시된 대로 Build Forge 웹 애플리케이션을 지정하도록 DocumentRoot 설정을 수정하십시오. 다음 예제에서 Build Forge 설치 디렉토리는 /opt/buildforge입니다.
    <VirtualHost *:80>
         ServerAdmin build@yourdomain.com
         DocumentRoot /opt/buildforge/webroot/public
         ServerName ausbuild01.yourdomain.com
         ServerAlias build.yourdomain.com mc.yourdomain.com #optional server aliases
         ErrorLog logs/ausbuild.error_log
         CustomLog logs/ausbuild.access_log common
    </VirtualHost>
  3. PHP 관련 항목을 추가하십시오.
    • Windows 시스템
      LoadModule php5_module "C:\Program Files\IBM\HTTPServer\modules\php5apache2_2.dll"
      
      <IfModule dir_module>     
         DirectoryIndex index.html index.php
      </IfModule>  
      
      AddType application/x-httpd-php .php 
      
      # PHPIniDir is the location of the php.ini file
      PHPIniDir "C:\Program Files\IBM\HTTPServer\conf"
    • UNIX 및 Linux 시스템
      LoadModule php5_module "/opt/IBM/HTTPServer/modules/libphp5.so"
      
      <IfModule dir_module>     
         DirectoryIndex index.html index.php
      </IfModule>  
      
      AddType application/x-httpd-php .php 
      
      # PHPIniDir is the location of the php.ini file
      PHPIniDir "/opt/IBM/HTTPServer/conf"
  4. 기본 사용자의 명령문을 변경하십시오.
    • AIX 시스템을 사용 중인 경우, User daemonGroup daemon보다는 User daemonGroup staff를 사용하십시오.
    • Linux 시스템의 경우, <bfinstall>/webroot/templates_c 폴더에 있는 templates_c 파일에서 명령문을 User daemonGroup daemon으로 변경하십시오. Linux 시스템의 예제는 chown daemon:daemon /opt/buildforge/webroot/templates_c입니다.
  5. templates_c 파일에 대한 권한을 변경하십시오. Linux 시스템에서는 daemon: daemon을 사용하고 AIX 시스템에서는 daemon: staff를 사용하십시오. 다음은 Linux 시스템의 예제입니다.
    chown daemon:daemon /opt/buildforge/webroot/templates_c
  6. 필요한 경우 IHS 포트 번호를 변경하십시오. 기본 포트 번호는 80입니다. httpd.conf에 대해 필요한 기타 모든 사항을 변경하십시오.

PHP에서 프록시 서버 지정

이 태스크 정보

관리 콘솔이 해당 데이터베이스에 액세스할 때 프록시 서버를 사용해야 하는 경우에만 이 단계를 수행하십시오.

프로시저

PHP 구성 파일 php.ini를 편집하십시오. 이 파일은 <php-install>/lib;에 있습니다(예: /usr/local/php-5.3.6).

다음 항목을 추가하십시오.

bf_proxyHost=<your_proxy_server_hostname>
bf_proxyPath=<your_proxy_path>
bf_symlinkPath=<symlink_to_proxy_path>

IHS에 필요한 SSL 구성

이 태스크 정보

IHS의 일반 SSL 설정 이외에 IHS가 Build Forge®에서 작동하는 데 필요한 추가 요구사항이 있습니다.

프로시저

  1. 경로에 Build Forge® 도구 디렉토리를 포함시키십시오.
    • Windows 시스템:
      • bfinstall\ibmjdk\bin
      • bfinstall\openssl
    • Unix 또는 Linux 시스템:
      • bfinstall/server/ibmjdk/bin
  2. 라이브러리 경로에 Build Forge® 도구 디렉토리를 포함시키십시오.
    • AIX 시스템(LIBPATH):
      • bfinstall/openssl
    • Unix 또는 Linux 시스템(LD_LIBRARY_PATH):
      • bfinstall/openssl
  3. Build Forge® 키를 PKCS12에서 CMS로 변환하십시오. GSKIT 도구의 최신 버전을 사용하십시오. gsk7\bin(Windows) 또는 bin(Unix 또는 Linux)에서 다음 명령을 실행하십시오(명확히 하기 위해 행 바꾸기가 추가됨).
    gsk7cmd -keydb 
            -convert 
            -db bfinstall\keystore\buildForgeKeyStore.p12 
            -pw buildForgeKeyStore_password 
            -old_format pkcs12 
            -new_format cms
  4. Stash 파일에 비밀번호를 저장하십시오. IHS에서는 이 파일을 사용하여 시작 중에 비밀번호를 가져옵니다. 이 파일이 없으면 IHS가 비밀번호를 묻는 프롬프트를 표시합니다. GSKIT 도구의 최신 버전을 사용하십시오. gsk7\bin(Windows) 또는 bin(Unix 또는 Linux)에서 다음 명령을 실행하십시오(명확히 하기 위해 행 바꾸기가 추가됨).
    gsk7cmd -keydb 
            -stashpw 
            -db bfinstall\keystore\buildForgeKeyStore.kdb 
            -pw buildForgeKeyStore_password
  5. httpd.conf를 수정하십시오. Windows의 경우 다음 항목을 포함하십시오. 사용자가 https만 사용하여 액세스하도록 하려면 Listen 80을 주석 처리해야 합니다.
    LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
    # Listen 80
    Listen 0.0.0.0:443
    <VirtualHost *:443>
    SSLEnable
    SSLClientAuth None
    SSLProtocolDisable SSLv2 
    SSLServerCert buildforge
    KeyFile bfinstall\keystore\buildForgeKeyStore.kdb
    SSLStashFile bfinstall\keystore\buildForgeKeyStore.sth
    ErrorLog bfinstall\Apache\logs\ssl_error.log
    TransferLog bfinstall\Apache\logs\transfer.log
    </VirtualHost>

    Unix 및 Linux의 경우 다음 항목을 포함시키십시오. 사용자가 https만 사용하여 액세스하도록 하려면 Listen 80을 주석 처리해야 합니다.

    LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
    # Listen 80
    Listen 0.0.0.0:443
    <VirtualHost *:443>
    SSLEnable
    SSLClientAuth None
    SSLProtocolDisable SSLv2 
    SSLServerCert buildforge
    KeyFile bfinstall/Platform/keystore/buildForgeKeyStore.kdb
    SSLStashFile bfinstall/Platform/keystore/buildForgeKeyStore.sth
    ErrorLog bfinstall/server/apache/logs/ssl_error.log
    TransferLog bfinstall/server/apache/logs/transfer.log
    </VirtualHost>

    bfinstall은 설치 디렉토리의 루트입니다. 위 단계에 대해 Unix 및 Linux에서는 올바른 디렉토리에 도달하려면 /Platformbfinstall에 추가해야 합니다. 또한 디렉토리를 구분하도록 백슬래시(\) 대신 슬래시(/)를 사용해야 합니다.

결과

자세한 정보는 SSL 설정에 대한 IHS 문서를 참조하십시오.

Windows: DLL 대체

이 태스크 정보

IBM HTTP Server 8.0 이전 버전을 사용할 경우 DLL을 Rational® Build Forge®와 함께 제공된 DLL로 바꾸어야 합니다.

프로시저

IBM HTTP Server 설치 디렉토리의 여러 위치에서 기존 libeay32.dll 파일을 찾아서 바꾸십시오.
  • <bfinstall>/openssl에 제공된 libeay32.dll을 사용하십시오.
  • DLL의 모든 인스턴스를 검색하여 바꾸십시오. Windows 2003의 예제 위치는 다음과 같습니다.
    <ihs_install>\Plugins\gsk7\gsk7_32\icc\osslib
    <ihs_install>\gsk7\icc\osslib

결과

DLL을 대체한 후 HTTP 서버를 정상적으로 시작할 수 있습니다. 대체하지 않은 경우 HTTP 서버가 시작되지 않습니다.

AIX 시스템: 추가 설정

AIX 시스템의 경우 추가 단계가 필요합니다.

프로시저


피드백