5

複数のバージョンの PHP を同じボックス (レールなど) で実行することは可能ですか? これが私の問題です。新しいプロジェクトで開発を開始する必要があり、最新の Zend フレームワークとアクティブなレコードを使用できるように、PHP 5.3 を使用する予定でした。
ただし、アプリケーションをホストする必要があるマシンには PHP 4.4 があり、そこでホストされている他のアプリケーションがいくつかあります。PHP のバージョンと非推奨の機能をアップグレードする際に、過去に多くの問題に直面したため、サーバー上の PHP のバージョンをアップグレードしたくありません。
同じボックスに複数のバージョンの PHP を搭載し、アプリケーションにロードさせたいバージョンを何らかの方法で指定することが可能かどうか疑問に思っていました ( rails のように)

4

3 に答える 3

4

はい、可能です。実際、多くのサーバーがこのように動作しています。特定のスクリプトを処理する必要があるバージョンを示す .php4 および .php5 拡張子が時々表示される場合があります。

ServerFault はこの質問に対処しました

php4 と php5 を並行して実行する

于 2009-12-15T06:29:33.817 に答える
0

PHP の 1 つのバージョンを Apache モジュールとして使用し、別のバージョンを CGI として使用する可能性があります。しかし、私が好きなアイデアは次のとおりです。

  • Apache のいくつかの異なるインスタンス、
  • それぞれが異なるポートでリッスンします(たとえば、ポート 44000 で PHP 4.4、ポート 53100 で PHP 5.3.1)。
  • そして、それぞれが異なるバージョンの PHP を使用しています

このように、互いに独立して動作するまったく異なる環境があり、他の環境を壊す危険を冒すことなく、各環境で必要なものを構成/変更できます。

(また、URL にポート番号を含めたくない場合は、個別の Apache インスタンスの前にプロキシを配置できると思います。そのため、1 つしかないように見えます)

于 2009-12-15T06:31:45.887 に答える