Apache HTTP Server 대신 IBM HTTP Server 사용

기본적으로 설치되어 있는 Apache HTTP 서버 대신 관리 콘솔에서 사용할 IHS(IBM 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. <bfinstall>/webroot/templates_c에 대한 기본 사용자인 daemon을 사용하도록 UserGroup 명령문을 변경하십시오.
    User daemon
    Group daemon
  5. 필요한 경우 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. JAVA_HOME에 Build Forge 도구 디렉토리를 포함하십시오.
    • Windows
      • bfinstall\ibmjdk
    • UNIX 또는 Linux
      • bfinstall/server/ibmjdk
  4. 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
  5. Stash 파일에 비밀번호를 저장하십시오. IHS에서는 이 파일을 사용하여 시작 중에 비밀번호를 가져옵니다. 이 파일이 없으면 IHS가 비밀번호를 묻는 프롬프트를 표시합니다. GSKIT 도구의 최신 버전을 사용하십시오. gsk7\bin(Windows) 또는 bin(UNIX 또는 Linux)에서 다음 명령을 실행하십시오(명확히 하기 위해 행 바꾸기가 추가됨).
    gsk7cmd -keydb 
            -stashpw 
            -db bfinstall\keystore\buildForgeKeyStore.kdb 
            -pw buildForgeKeyStore_password
  6. 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 시스템에 필요한 추가 설정이 있습니다.

프로시저


피드백