Linux: 1 つの Apache と 2 つの PHP バージョン。可能ですか?

Linux: 1 つの Apache と 2 つの PHP バージョン。可能ですか?

私の 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 つの方法があります。

  1. PHP スクリプトの問題を修正する (これが最善の方法だと思います)
  2. PHP ソースコードを変更して、"mod_php52.c"、"mod_php53.c" として報告されるようにします。
  3. 必要に応じてCGIとして実行します。ここ

異なるポートで2つのサーバーを実行し、プロキシを使用することもできます。

答え2

はい、可能です。Apache 構成の「FcgidWrapper」ディレクティブで fastcgi モードを使用する必要があります。この方法では、異なる URL 拡張子、パス、または仮想ホストに対して、異なる fastcgi ハンドラー デーモンを定義できます。バックグラウンドでは、各 fastcgi デーモンが異なる PHP バージョンを簡単に実行できます。

答え3

私が使うPHPファーム複数のPHPバージョンを実行する1 つの Apache インスタンスで。完全に正常に動作します。

基本的には、代替の PHP バージョンを CGI としてインストールし、それらを使用して.php特定の vhost 内のファイルを処理します。

関連情報