PHP マニュアル
前のページ | 第 3章インストール | 次のページ

# Apache 2.0サーバ

本節には、UnixもしくはWindowsプラットフォームで Apache 2.0にPHPをインストールするための説明や ヒントがあります。

警告
Apache 2.0とPHPの組み合わせを(Unix、Windows どちらのプラットフォームでも)実運用環境で使用しないでください。

Apache 2.0サーバに関する基本的な知識を得るために、Apache Documentationを一読することを お勧めします。

## PHPとApache 2.0の互換性

PHP 4.3.0がリリースされるまでの間は、Apache 2.0の最新バージョンと 以下のいずれかのリリースとの組み合わせで使用することをお勧めします。

- PHP 4.3.0 or later available at http://www.php.net/downloads.php.
- 最新の安定開発バージョン。 ソースコード http://snaps.php.net/php4-latest.tar.gzもしくはWindows用の バイナリ http://snaps.php.net/win32/php4-win32-latest.zipをダウンロード して使用します。
- PHP 4.3.0のプレビューリリース(もしくはRC)をhttp://qa.php.net/から ダウンロードすることが出来ます。
- anonymous CVSを使用して 最新のPHPを取得することも出来ます。

上記のPHPバージョンはApache 2.0.40以降と 互換性があります。

> 注意: Apache 2.0 SAPIサポートはPHP 4.2.0から開始されて おり、PHP 4.2.3はApache 2.0.39との組み合わせで動作することが 確認されています。ただし他のApache 2バージョンとの組み合わせでの 動作は保証されていません。PHP 4.2.3とApache 2.0.39との組み合わせに ついてもお勧めはしません。

> 上記で触れている全てのPHPバージョンはApache 1.3.x では問題なく動作します。

## Linux上でのPHPとApache 2

最新バージョンのApache 2.0を ダウンロードして上述のいずれかのバージョンのPHPを用意してください。 このクイックガイドはApache 2.0でPHPを動作させるための 基本的な部分しかカバーしていません。更なる情報についてはApache Documentationをご覧ください。 情報が古く不正確になってしまうため、ここには詳細なバージョン番号は 記述されていません。'NN'という文字列をご使用のバージョンに適宜置き換えて ください。

例 3-6. インストールガイド(Apache 2 Shared Module Version)

    1.  gzip -d httpd-2_0_NN.tar.gz
    2.  tar xvf httpd-2_0_NN.tar
    3.  gunzip php-NN.tar.gz
    4.  tar -xvf php-NN.tar
    5.  cd httpd-2_0_NN
    6.  ./configure --enable-so
    7.  make
    8.  make install

        この状態でApache 2.0.NNが/usr/local/apache2で使用可能になっており、
        モジュールのダイナミックロードと標準MPMのpreforkがサポートされている
        はずです。正しくインストールされたかどうかをテストするために
        Apacheサーバを起動するには:
        /usr/local/apache2/bin/apachectl start
        とします。PHPの設定を開始するためにサーバを停止するには:
        /usr/local/apache2/bin/apachectl stop
        とします。

    9.  cd ../php4-NN
    10. ./configure --with-apxs2=/usr/local/apache2/bin/apxs
    11. make
    12. make install
    13. cp php.ini-dist /usr/local/lib/php.ini

        php.iniファイルを編集してPHPオプションを適宜設定して
        ください。もしphp.iniを他の場所で使用したい場合は
        --with-config-file-path=/pathをステップ10で指定して
        ください。

    14. httpd.confを編集して以下の行が記述されていることを確認して
        ください。

       LoadModule php4_module modules/libphp4.so
       AddType application/x-httpd-php .php

      拡張子は自由に設定することが出来ます。.phpというのは私たちが
      挙げた例の一つ過ぎません。

      LoadModule文の右項に記述するパスにあなたのシステム上でのPHPモジュールの
      位置を記述します。これまでのステップ通り実行すれば上記の値のままで
      問題ないではずです。

    15. Apacheサーバを起動してください:
       /usr/local/apache2/bin/apachectl start

上記の手順で、PHPSAPIモジュールサポートを有効にして Apache 2.0を動作させることが出来ます。もちろん、Apacheと PHP共にもっと多くのconfigureオプションを指定することが出来ます。 詳しい情報を得るにはそれぞれのソースツリーディレクトリで./configure --helpを実行してください。マルチスレッド版のApache 2.0を 構築する場合は、標準MPM-Moduleである`prefork`を `worker`もしくは`perchild`で 上書きする必要があります。このためには、上記のステップ6で--with-mpm=workerもしくは--with-mpm=perchildを指定します。マルチ スレッド版については、その動作に関して十分注意してください。 詳細はApacheドキュメントのMPM-Modules を参照してください。

> 注意: マルチスレッド版のApacheを構築する場合は、あなたのシステムがスレッドを サポートしている必要があります。また、この場合PHPを 実験的なステータスにあるZend Thread Safety(ZTS)で構築することを意味します。 従って全ての拡張モジュールを使用できるわけではありません。`prefork`MPM-Moduleでの構築をお勧めします。

## Windows上でのPHPとApache 2.0

まずWindows特有の事柄を 読むことをお勧めします。

警告
Apache 2.0はWindows NT 4.0, Windows 2000, Windows XPでの動作を 想定してデザインされており、現時点ではWindows 9xのサポートは 不完全です。これらのプラットフォームでの動作は保証されません。

最新バージョンのApache 2.0をダウンロードして上記のいずれかのPHPのバージョンを 用意します。まずマニュアル インストールの手順の手順に従ってから、PHPと Apacheの統合を開始します。

Windows上のApache 2.0でPHPを動作させるには2つの 方法があります。一つはCGIバイナリを使用する方法、もう一つはApache モジュールDLLを使用する方法です。前者の場合は一旦Apacheサーバを 停止して`httpd.conf`をPHPと 動作するように編集します。

CGIバイナリを有効にするにはApacheの`httpd.conf`に以下の3行を追加します。

例 3-7. CGI版PHPとApache 2.0

    ScriptAlias /php/ "c:/php/"
    AddType application/x-httpd-php .php
    Action application/x-httpd-php "/php/php-cgi.exe"

PHPをApache 2.0のモジュールとして使用したい場合は、 まず`php4ts.dll`を`winnt/system32` (Windows NT/2000)もしくは`windows/system32`(Windows XP)に移動します(既存のファイルは全て上書きしてください)。次に PHPモジュールを有効にするため、Apacheの `httpd.conf`に以下の2行を追加します。

例 3-8. モジュール版PHPとApache 2.0

    LoadModule php4_module c:/php/sapi/php4apache2.dll
    AddType application/x-httpd-php .php

> 注意: `c:/php/`はあなたが実際にPHPを インストールしたパスに置き換えてください。 LoadModuleディレクティブには`php4apche.dll` ではなく `php4apache2.dll` を使用するように注意してください。前者はApache1.3.x用です。

警告
インストール時に異なったPHPバージョンのDLLを 混同しないように気をつけてください。

前のページ | ホーム | 次のページ
Apacheサーバ | 上に戻る | Caudiumサーバ