- PR -

php4,5の共存について

1
投稿者投稿内容
hokutovega
会議室デビュー日: 2005/01/31
投稿数: 10
投稿日時: 2008-09-27 17:50
現在CentOS4でPHP4,5をバーチャルホスト毎に切り替えられる設定を行っていますがうまくいきません。
http://www.atmarkit.co.jp/fcoding/articles/macxphp/02/macxphp02d.html
を参考に設定しています。
httpd.conf内で
LoadModule php5_module modules/libphp5.so
LoadModule php4_module modules/libphp4.so
の両方をコメントアウトしないで設定はできるのでしょうか?
port80でPHP4,5をバーチャルホスト毎に切り替えがうまくいっている人はいますでしょうか?
よろしくお願いします。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2008-10-03 01:14
記事の内容見てみましたが、随分とまた手荒なことをしているものだと感じました。
とは言っても、記事では Mac OS X を利用されているようなので、少し事情が異なるでしょう。

で、手元の Linux 環境で確認してみましたが、どうもモジュール同士が競合してしまっているようでした。

拡張子によって利用するバージョンを切り替えるようにしてみましたが、両方のモジュールを組み込んだ状態で php4 ファイルを読んでも、php5 ファイルを読んでも Segmentation Fault を起こすありさま。gdb で attach してみると、sapi_module 構造体の中身が1モジュールの場合と2モジュールの場合とで明らかに異なっていました。

おまけに、apache を停止するときにも free のところで Segmentation Fault。

このような問題ある環境でテストしても十分とは言えないので、
普通にポートを替えてインストールするなり、どうしても同じ Apache 上で動かさなければならないようであれば、mod_proxy を使うなどしてさらにフロントエンドで Apache を動かすなりされた方がよいと思います。
hokutovega
会議室デビュー日: 2005/01/31
投稿数: 10
投稿日時: 2008-10-05 17:37
あんとれさん。

確認ありがとうございました。
やはりモジュール2つ読み込むのは無理ですよね。
取りあえずCLI版を2個動作させるのはあきらめてPHP4(CLI版)PHP5(CGI版で)で動作させることにしました。
1

スキルアップ/キャリアアップ(JOB@IT)