Apache HTTP Server の代わりに IBM HTTP Server を使用

管理コンソールで使用できるように IBM HTTP Server (IHS) を構成できますが、組み込み Apache HTTP Server を使用するよう強くお勧めします。

始める前に

  • ライセンス・サーバーの制約により、Build Forge コンソールおよび IBM HTTP Server は、同一のオペレーティング・システムおよびハードウェア・プラットフォームで稼働する必要があります。
  • 用意されているプリコンパイル済み PHP モジュールを使用してください。 それらが動作しない場合、ご自身で PHP モジュールをコンパイルする必要があります。 リリース・ノートを調べて、ご使用のオペレーティング・システム用のモジュールが実際に組み込まれていることを確認してください。
  • 例では、以下のディレクトリーが IBM HTTP Server インストール・ディレクトリーとして使用されます。 ご使用のインストール・ディレクトリーと異なる場合は、置き換えてください。
    • Windows: C:¥Program Files¥IBM¥HTTPServer
    • Unix および Linux: /opt/IBM/HTTPServer

このタスクについて

このセクションでは、以下の作業を行う方法について説明します。

  1. プリコンパイルされた PHP ファイルをセットアップします。
  2. Build Forge Web アプリケーションを指すように、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¥extension¥
      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 ディレクトリーで、IBM HTTP Server (IHS) 用の httpd.conf ファイルを見つけます。
  2. 以下の例に示すように、Build Forge Web アプリケーションを 指すように 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 ファイルに対してステートメントをユーザー・デーモングループ・デーモンに変更します。例えば、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=<使用するプロキシー・サーバーのホスト名>
bf_proxyPath=<プロキシーのパス>
bf_symlinkPath=<symlink からプロキシーへのパス>

IHS 用 SSL の構成

このタスクについて

IHS を Build Forge® と連携させるには、通常の SSL セットアップ以外に、追加の要件があります。

手順

  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 の置換

このタスクについて

バージョン 8.0 よりも古い IBM HTTP Server を使用している場合、DLL を Rational® Build Forge® に用意されているもので置き換える必要があります。

手順

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 システムの場合、追加のセットアップが必要になります。

手順

  • AIX 6 システム:
    • <bfinstall>/Platform/his_modules/libxml2.a/opt/IBM/HTTPServer/modules にコピーします。
    • /opt/IBM/HTTPServer/modules を LIBPATH に追加します。
  • AIX 7 システム:
    • <bfinstall>/Platform/his_modules/libxml2.a および <bfinstall>/Platform/his_modules/libxml2.so.2/opt/IBM/HTTPServer/modules にコピーします。
    • /opt/IBM/HTTPServer/modules を LIBPATH に追加します。
    • 次の行を httpd.conf に追加します。
      LoadFile "/opt/IBM/HTTPServer/modules/libxml2.so.2"

フィードバック