Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

Apacheサーバ

本節では、PHPをApacheにインストールする際の注意事項とコツについて 説明します。Unix 版と Windows 版の両方につ いて説明します。

Unix上でApacheにPHPをインストールする手順

以下の手順の8行目でconfigure に追加する引数を configureのオプションの全て から選択可能です。ここではバージョン番号が意図的に省略 されています。'xxx'の部分を貴方が使用するファイルに対応するものに 置き換えてください。

例 3-5 PHP 4インストール手順 (Apache共有モジュール版)

1.  gunzip apache_xxx.tar.gz
2.  tar xvf apache_xxx.tar
3.  gunzip php-xxx.tar.gz
4.  tar xvf php-xxx.tar
5.  cd apache_xxx
6.  ./configure --prefix=/www --enable-module=so
7.  make
8.  make install
9.  cd ../php-xxx
10. ./configure --with-mysql --with-apxs=/www/bin/apxs
11. make
12. make install

  インストール後にconfigureオプションを変更したくなった場合は
  最後の3つの手順を繰り返してください。新しいモジュールを有効
  にするにはapacheを再起動するだけです。apacheの最コンパイルは
  必要ありません。

12. cp php.ini-dist /usr/local/lib/php.ini

  PHPオプションを設定するために.iniファイルを編集して下さい。このファ
 イルを他の場所に置きたい場合は、手順8でオプション
  --with-config-file-path=/path を使用して下さい。

13. httpd.conf または srm.conf ファイルで以下の行がコメントアウト
    されていないかどうか(つまり有効になっているかどうか)確認して
    ください。

    AddType application/x-httpd-php .php

    LoadModule php4_module        libexec/libphp4.so
 
  ここで好きな拡張子を選択できます。.php は単に推奨されるだけです。
  .htmlを選択することも可能でし、旧バージョンとの互換のために.php3
  を使用することも出来ます。

  LoadModule文に記述されているパスはあなたのシステムにインストール
  されているPHPモジュールを指している必要があります。上記の例はこの
  手順に沿ってインストールを行った場合のパスです。

14. 通常の手順により Apache サーバを起動して下さい。(HUPまたはUSR1シグ
    ナルを使用してリロードするのではなく)サーバを停止してから再起動す
    る必要があります。

Apache のインストールやUNIXの種類によりサーバを停止し、再起動する 方法はいくつもあります。複数のApache/UNIXの組合せについてサーバを 再起動する際に使用される典型的な方法を以下に示します。 /path/to/ を使用するシステムのアプリケーション へのパスに置き換えて読んで下さい。

1. 複数の Linux および SysV から派生したもの:
/etc/rc.d/init.d/httpd restart

2. apachectl スクリプトを使用する方法:
/path/to/apachectl stop
/path/to/apachectl start

3. (OpenSSL を使用している場合、) apachectl と同様に httpdctl および
       httpsdctl を使用する方法:
/path/to/httpsdctl stop
/path/to/httpsdctl start

4. mod_sslまたは他のSSLサーバを使用している場合、マニュアルでstopと
   startを行うかもしれません。:
/path/to/apachectl stop
/path/to/apachectl startssl

apachectl および http(s)dctl の実行ファイルの位置はシステムにより 異なります。システムが locate または whereis または which をサポー トしている場合、サーバ制御用プログラムを見つけるために使用するこ とが可能です。

PHPをApache用にコンパイルする別の例を以下に示します。

./configure --with-apxs --with-pgsql

これにより、共有ライブラリ libphp4.so が作成 されます。Apacheのhttpd.confファイルにおいて LoadModuleを使用してApacheにこのライブラリをロードすることが可能 です。上の例では、PostgreSQLサポートがこの libphp4.soライブラリに埋め込まれます。

./configure --with-apxs --with-pgsql=shared

この例でも Apache用libphp4.so 共有ライブラリ が作成されます。しかし、共有ライブラリ pgsql.so も作成されます。この共有ライブラリ は、php.ini ファイルのextensionディレクティ ブまたはスクリプト内でdl()関数を使用して明示的 にロードすることが可能です。

./configure --with-apache=/path/to/apache_source --with-pgsql

これにより、libmodphp4.a ライブラリと mod_php4.c およびいくつかの付属ファ イルが作成され、Apacheにソースツリーのディレクトリ src/modules/php4 にコピーされます。続いて、 --activate-module=src/modules/php4/libphp4.a を指定してApacheをコンパイルして下さい。これにより、Apache構築シ ステムは、libphp4.a を作成し、 httpd バイナリに静的にリンクされます。 PostgreSQL サポートはこのhttpdバイナリに直接 インクルードされるため、最終的な結果は、Apache全体とPHP全体を含む 単一のhttpdバイナリになります。

./configure --with-apache=/path/to/apache_source --with-pgsql=shared

上と同じですが、最終的なhttpdに PostgreSQLサポートを直接インクルードする代わりに、共有ライブラリ pgsql.soをファイル php.iniまたはdl()により直 接的にPHPにロードすることが可能です。

異なったPHPの構築法を選択する際、各方法の利点と欠点を考慮する必要 があります。共有オブジェクトとして構築する場合、Apacheと分割して コンパイルすることが可能で、PHPを追加または変更する際に全体を再コ ンパイルする必要がありません。PHPをApacheに(静的に)組み込む場合に は、PHPはより高速にロード/実行することが可能です。詳細な情報につ いては、ApacheのDSOサポートのWebペー ジを参照下さい。

Windows上のApache 1.3.xへのPHPインストールの詳細

PHP を Windows 上の Apache 1.3.x で動作させるには、2種類の方法が あります。一つは、CGIバイナリ (php.exe) を使用する方法、もう一つ は Apache モジュールdll を使用する方法です。どちらの場合も Apache サーバを停止し、PHP と組み合むように Apache を設定するために srm.conf または httpd.conf を編集します。

Apache用にPHPを設定する手順にはいくつかありますが、この手順は入門 者にも使用可能な程簡単です。設定用ディレクティブに関する詳細につ いては、Apacheのドキュメントを参照下さい。

マニュアルインストール手順 のセクションに説明されたようにPHPパッケージをunzipで c:\php\に展開した場合、CGIバイナリを設定するには以下の行をApache の設定ファイルに追加する必要があります。

  • ScriptAlias /php/ "c:/php/"

  • AddType application/x-httpd-php .php .phtml

  • Action application/x-httpd-php "/php/php.exe"

サーバを再起動することを忘れないで下さい。再起動は、例えば、 NET STOP APACHE の後に NET START APACHE を実行します。

PHPをApacheのモジュールとして使用したい場合、必ず php4ts.dllをwindows/system (Windows 9x/Meの場 合)またはwinnt/system32 (Windows NT/2000/XPの場合)ディレクトリに移 動し、以前のファイルを上書きするようにして下さい。 次に以下の2行をApacheの設定ファイルに追加して下さい。

  • LoadModule php4_module c:/php/sapi/php4apache.dll

  • AddType application/x-httpd-php .php .phtml

注意 Windows版のApache 1.3.22において、デフォルトの設定ファイル (httpd.conf-dist-win) には、デフォルトで ClearModuleList ディレクティブが含まれています。 このディレクティブが使用された場合、 AddModule mod_php4.cAddModule リストに追加する必要があります。 さもないと、PHPはApacheモジュールとして登録されなくなります。

ソースコードハイライト機能を使用するには、PHPスクリプトファイルを 作成し、次のようなコードを加えてください。<?php show_source ("original_php_script.php"); ?> original_php_script.php の部分を ソースを見たいと思うファイルの名前に置き換えてください。 (これがこの機能を使用するための唯一の手段です。)

注意 Windows版のApache においては、"c:\directory\file.ext" のようなパ ス設定におけるバックスラッシュは、"c:/directory/file.ext"のよう に全てスラッシュに変換する必要があります。