PHP のインストールと構成

管理コンソールで使用するために PHP をセットアップするには、次の手順に従ってください。

始める前に

要件:
  • バージョン: バージョン 5.2.4 以降の PHP が必要です
  • データベース・ドライバー: インストールされた Build Forge データベース用の PHP モジュール

このタスクについて

このセクションの説明に従って、Apache HTTP Server またはその他の Web サーバー用に PHP を構成します。 以下の説明では、必要なバージョンの PHP が既にダウンロードされていることが前提となります。
  • PHP のダウンロード
  • PHP のインストール
  • PHP の構成
  • Apache 構成ファイルの編集
  • (オプション) データベースへのアクセスに使用するプロキシー・サーバーの識別 (管理コンソール・ホストがプロキシー・サーバーを介してデータベースにアクセスする場合にのみ必要です)

PHP のインストール

このタスクについて

このセクションでは、ソースから PHP のコンパイルおよびインストールする方法を説明します。 すでに PHP がインストールされており再コンパイルをしない場合は、適切なデータベース・ドライバーがインストールされているかどうかを判別するだけでかまいません。 データベース・ドライバーをインストールする必要がある場合は、使用するインストール方法に関して PHP の資料を参照してください。以下のように Build Forge で使用するデータベースに対応したデータベース・ドライバーをインストールします。
  • DB2 の場合: ibm_db2 ドライバー
  • MySQL の場合: mysqli ドライバー
  • Oracle Instant Client の場合: oci8 ドライバー
注: 現時点では、完全な Oracle クライアントは PHP oci8 と互換性がありません。必ず Oracle Instant Client を使用してください。

手順

  1. 上で作成した作業ディレクトリーにインストールする PHP を構成します。
    $ ./configure --prefix=/usr/local/php-5.2.4 --with-<database>=shared ¥
    --with-apxs2 --with-ldap=shared --enable-mbstring --enable-shmop ¥
    --with-xml --with-zlib=shared
    --with-<データベース名> は以下のように置き換えてください。
    • DB2 の場合: --with-ibm_db2[=dir]=dir が指定されない場合は、デフォルト値は /home/db2inst1/sqllib が使用されます。
    • MySQL の場合: --with-mysqli[=file]。オプション・ファイルのパラメーターは mysql_config へのパス名です。
    • Microsoft SQL Server の場合: --with-mssql[=dir]
    • Oracle の場合: PHP oci8 を使用するための Oracle Instant Client の別個のインストールが必要になります。Oracle Instant Client を使用してデータベースに接続する場合は、--with-oci8=instantclient,lib を使用します (lib は Instant Client の lib ディレクトリーへのパスです)。

    コード・ブロック内の行継続文字は ¥ であることに注意してください。このステップでは、PHP のインストール先、およびそれと一緒にインストールされるオプションを指定します。 デフォルトでは、/usr/local にインストールされます。 この例では、/usr/local/php-5.2.4 にインストールする方法を説明します。 この場所は後述の例で使用します。

  2. PHP をコンパイルします。
    $ make

    このステップでは、ローカル側のディレクトリーに実行可能ファイルをコンパイルします。

  3. PHP を (root として) インストールします。
    # make install
    このステップは、Apache をインストールするディレクトリー (この例では、/usr/local/apache-2.2.4) に対する書き込み権限を持つユーザーとして実行する必要があります。 通常は、root として実行します。 ローカル側の管理セットアップによっては、これと異なる場合があります。

PHP の構成

手順

  1. 拡張ファイルを拡張ディレクトリーにコピーします。 データベースの拡張ファイルは、リポジトリーからアクティブ拡張ディレクトリーまでコピーする必要があります。 以下は、PHP を /usr/local/php-5.2.4 にインストールした場合の例です。ここで <日付スタンプ> は数字のストリングになることに注意してください。
    $ cd /usr/local/php-5.2.4/lib/php/extensions/no-debug-non-zts-<datestamp>/
    $ cp <db-extensions> ..
    <db-extensions> ファイルは、以下のように Build Forge で使用するデータベースに対応します。
    • DB2 の場合: ibm_db2.so
    • MySQL の場合: mysql.so および mysqli.so
    • Oracle の場合: oci8.so
  2. PHP 構成ファイル php.ini を編集します。 以下は、PHP を /usr/local/php-5.2.4 にインストールした場合の例です。
    $ cd /usr/local/php-5.2.4/lib/
    $ vi php.ini
    次の項目を追加します。
    extension_dir=/usr/local/php-5.2.4/lib/php/extensions
    upload_tmp_dir=<directory>
    extension=<db-extension-so>
    以下のように使用するデータベースに対応した <db-extensions-so> ファイル名 (複数可) を使用します。
    • DB2 の場合: extension=ibm_db2.so
    • MySQL の場合: 以下の 2 つを使用します。
      extension=mysql.so
      extension=mysqli.so
    • Oracle の場合: extension=oci8.so
    注: upload_tmp_dir に使用するディレクトリーは、Apache Web サーバーを実行するユーザーによって書き込み可能でなければなりません。通常、このユーザーは nobody ですが、ローカル側の管理慣行によってはこれと異なる場合があります。

Apache 構成ファイルの編集

手順

Apache 構成ファイルを編集します。PHP に関する情報を httpd.conf に追加します。
cd <apache-dir>
vi httpd.conf
次の行を追加します。
LoadModule php5_module modules/libphp5.so
AddHandler php5-script .php
AddType text/html .php
DirectoryIndex index.php

プロキシー・サーバーの指定

このタスクについて

オプション: このステップは、管理コンソールでプロキシー・サーバーを使用してデータベースにアクセスする場合にのみ必要です。

手順

PHP 構成ファイル php.ini を編集します。 ファイルは <php-install>/lib にあります。例えば、/usr/local/php-5.2.4 などです。

次の項目を追加します。

bf_proxyHost=<使用するプロキシー・サーバーのホスト名>
bf_proxyPath=<プロキシーのパス>
bf_symlinkPath=<symlink からプロキシーへのパス>

フィードバック