
私の PHP アプリケーションの中には、PHP 5.2 を必要とするものもあれば、PHP 5.3 を必要とするものもあります。1 つの仮想ホストが 1 つの PHP ライブラリで動作し、別の仮想ホストが別の PHP ライブラリを必要とするように Apache (v2.2.14) を構成する方法はありますか?
現在私が見つけた唯一の解決策は、2 つの Apache と 2 つの PHP をインストールし、各 Apache を異なるポートに配置することです。
ありがとう
答え1
PHP 4 および 5 を使用する場合は、使用するモジュールを簡単に操作できます。
<IfModule mod_php5.c>
<IfModule mod_php4.c>
この問題に対処するには 3 つの方法があります。
- PHP スクリプトの問題を修正する (これが最善の方法だと思います)
- PHP ソースコードを変更して、"mod_php52.c"、"mod_php53.c" として報告されるようにします。
- 必要に応じてCGIとして実行します。ここ
異なるポートで2つのサーバーを実行し、プロキシを使用することもできます。
答え2
はい、可能です。Apache 構成の「FcgidWrapper」ディレクティブで fastcgi モードを使用する必要があります。この方法では、異なる URL 拡張子、パス、または仮想ホストに対して、異なる fastcgi ハンドラー デーモンを定義できます。バックグラウンドでは、各 fastcgi デーモンが異なる PHP バージョンを簡単に実行できます。
答え3
私が使うPHPファームに複数のPHPバージョンを実行する1 つの Apache インスタンスで。完全に正常に動作します。
基本的には、代替の PHP バージョンを CGI としてインストールし、それらを使用して.php
特定の vhost 内のファイルを処理します。