お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2007-11-04 13:53:58

renpoo
メンバ
登録日: 2007-03-12

ubuntu-7.10 での PHP4 と PHP5 の共存

おせわになります。

仕事で PHP を使った開発をしております。
ですが、新規案件は PHP5 で、旧案件は PHP4 で開発する必要が出てきました。そこで両者を共存させたい、というのが今回の質問です。

自分なりに調べて、

http://wiki.poyo.jp/read/Writing/kiwameru_php_vol.1/php4_and_php5
http://www.phppro.jp/news/60
http://devzone.zend.com/node/view/id/633

などを参考に、作業を進めてみましたが、巧くいきませんでした。

ubuntu で PHP4 と PHP5 の共存をさせるにはどうしたらいいか、ご存知の方はお手数ですが御教示願いたいです。

なにか、不明な点があれば追って説明します。

オフライン

 

#2 2007-11-05 09:56:12

hito
管理者
登録日: 2007-03-18

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

renpoo による投稿:

ubuntu で PHP4 と PHP5 の共存をさせるにはどうしたらいいか、ご存知の方はお手数ですが御教示願いたいです。

これは「共存」でないといけない理由はありますか?(マシンの台数が限られていて、
しかもメモリ量が足りない or ライセンスの問題があって仮想マシンも使えないとか)

個人的には、業務開発で環境を構築するのであれば、PHP4/5共存といったトリッキーな
設定は避けた方がよいと思います(ついでに言うと、本番環境がUbuntuでなければ
そもそもOSも揃えた方がよいような気がします)。

あえてやるとすれば、apache2を複数起動する(それぞれ別のポートで動かす)といった
戦術は取れますか?

# 業務開発で今更PHP4というのは自殺行為だというのは前提にしても。

オフライン

 

#3 2007-11-05 12:24:34

renpoo
メンバ
登録日: 2007-03-12

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

おせわになります。

正直、この時代に PHP4 を使うことはいやでいやで仕方ないのですが、自分の会社はサーヴァー環境をあたらしくすることもままならない会社なので、このような質問に至っています。別にわたしの担当案件が PHP4 → PHP5 で抱える問題は数点なので、無理やり PHP5 でもなんとかできるかもしれないのですが。

共存させたいのは、個人的に PHP5 で開発したいものがあって、スタートしているのですが、PHP4 の案件も面倒を見なくてはならないため、です。

Apache2 を複数立てることは、さきほどの引用を参考にトライしてみましたが、うまく実現できませんでした。もし、ubuntu で Apache2 を複数動かそうとすると2発目は自分でインストールなのでしょうか? それとも、別名で Apache2-php4 みたいな名前にして2発目を立ち上げることができれば十分なのでしょうか? 公社の方向で途中までやってみたのですが、サーヴィスとしてあらたに追加するのに失敗してしまいました。

ということで「戦術」についてアドヴァイスをいただければ幸いです。
「仮想マシン」も検討したいです。メモリを増設すれば十分対応できそうですから。

以上、宜しくお願いします。




追記:
本番環境は、この開発に成功すれば ubuntu にしよう、との上司の判断です。

最後の編集者: renpoo (2007-11-05 12:34:41)

オフライン

 

#4 2007-11-05 12:46:03

hito
管理者
登録日: 2007-03-18

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

簡単にやるのであれば、以下のようにすると良いと思います。

・PHP5環境
 →普通にapache2+php5パッケージをインストールして構築@port80

・PHP4環境
 →ソースからapache2をインストール&PHP4をインストールして構築@port8080

というのは、7.10ではすでにPHP4が見捨てられていて、パッケージがないからです。

ただし、もっと楽なのはVMware Serverをインストールして、そこで6.06を動かして
PHP4、です。

6.06であれば普通にPHP4が使えますし、別のIPアドレスを割り振ればポート周りの
混乱もなくなります。

マシンのメモリ搭載量にもよりますが、512MBマシンであれば本体384MB+仮想マシン
128MB、で割り振れば何とか戦える気がします。1GB欲しいところではありますが。

オフライン

 

#5 2007-11-05 20:34:58

renpoo
メンバ
登録日: 2007-03-12

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

お返事が遅くなりました。

おかげさまで、VMware で 6.06 が動くところまで来ましたが、ネットワークが不調で、パッケージのアップデートができません。もうしばらくトライしてみます。

オフライン

 

#6 2007-11-08 00:58:26

renpoo
メンバ
登録日: 2007-03-12

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

だいたい、状況を解決できる目処が立ちました。
パッケージとして Apache2 や PHP4 をもらってくるのは失敗してしまいました。「パッケージが見付からない」とのエラーが出てますが、若干ネット接続が不安定なようなので分かりません。

ですから、ソースから Apache2 と PHP4 をビルドして、なんとか phpinfo() が表示できるところまで来ました。問題は mod_rewrite をインストールしたく configure で設定してみているのですが、巧く組み込んでくれない、というところですか。

もっとも .htaccess で指定しているのはインクルード・パスと文字コード設定なので、この状況でもなんとか切り抜けられるかもしれません。でも、とりあえず、mod_rewrite が動くように自力でがんばってみます。


VMware Server のインストールで多少、トラブルに遭いましたが、すでにネットにドキュメントがある状態なので、ここにも書き込むのは止めておきます。


とにかく、もうすこしで安全に PHP4 が動きます。
ありがとうございます。

オフライン

 

#7 2007-11-15 21:25:22

renpoo
メンバ
登録日: 2007-03-12

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

おせわになっております。
パッケージ・サーヴァーの不調や、こちらの VMware 自身に起因すると思われるネットワーク不調がありましたが、どうやらなんとか環境構築できそうです。

しかし、ここで明記しておきたい注意が。
システム・メモリが 512M のまま、ubuntu + VMware を動かすのは危険な模様です。core を吐いているような動作をして、ハードディスクが跳びました。もし、VMware を動かすにしてもそれなりのシステム環境にしてなさることをお薦めします。

>hito さん
ありがとうございました。
がんばります!

オフライン

 

#8 2007-11-28 09:22:50

JazzPianoLab
新しいメンバ
From: Japan
登録日: 2007-11-28

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

XAMPPというプログラムではApache2、MySQL、PHPをまとめてインストールすることができ、PHP4とPHP5の切り替えはコマンド1つだけで簡単にできますが、こちらはいかがでしょうか?

http://www.apachefriends.org/jp/index.html

最後の編集者: JazzPianoLab (2007-11-28 09:34:11)

オフライン

 

#9 2007-11-28 15:00:19

renpoo
メンバ
登録日: 2007-03-12

Re: ubuntu-7.10 での PHP4 と PHP5 の共存

>JazzPianoLabさん

せっかくの御紹介ですが、要件に合いません。


開発環境が動くようになったのでまとめておきます。

・メモリを1GBに増設
・VMware Server 最新版をインストール
・ubuntu-7.10 の VM を稼働 (6.06 ではパッケージ不備があり開発環境として構築できなかった)
・VM の上で Apache2 と PHP4 を手動でビルドしてインストール
・VM の上に開発プロジェクトを構築
・メインの OS から VM の上のプロジェクトを叩く

以上の対策で開発が再開できました。

オフライン

 

Board footer

Powered by FluxBB