- PR -

PHP エラー と アップデート

1
投稿者投稿内容
むつまじ
会議室デビュー日: 2004/04/24
投稿数: 3
投稿日時: 2004-04-24 14:58
現在 redhat9に Apache 1.3.29 PHP 4.3.4RC2 をインストールしてサーバーを
運用しています。
しかし、phpで mb_send_mailで undefined mb_send_mail エラーが表示されます。
原因がよくわかりません。

そこで、php 4.3.6にアップしようと思うのですが、方法がよくわかりません。
今の環境のまま、php4.3.6をかぶせるようにインストールすればよいのか?
削除、アンインストールのような方法が必要なのか?

よろしければアドバイスをよろしくお願いいたします。
コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2004-04-24 15:20
<?php phpinfo(); ?>

こういう PHP ファイルを作って表示した時に出る "Configure Command" の項目に
現行の PHP4 が configure された時のオプションが全て含まれていますから、これを
そっくりパクって新しいバージョンの PHP4 configure 時にバッチプログラムでも作って
全部指定すれば上手くかぶせられます。こんな風に

http://202.226.153.50/cobra/public_html/info.php

mb_ 何とかが通用しないとすれば、国際化PHP ではなく PHP本家のサイトから tar+gz
形式でパッケージを取ってきたかと思われますが、
'--enable-mbstring' '--enable-mbstr-enc-trans' こういうオプションを付けずに
configure; make; make install した可能性が高い。
mbstring を付けないとマルチバイトを扱う関数は全てlibphp4.soライブラリから
外されてしまうようなので。
むつまじ
会議室デビュー日: 2004/04/24
投稿数: 3
投稿日時: 2004-04-24 16:00
返信いただきありがとうございます。

インスール時のオプション指定がまずかったので、マルチバイトを扱う関数が使えないということですか。
では、現行のままマルチバイトを扱う関数を利用できるようにする方法はあるのですか?
linux 初心者なので、アップデートでconfigure 時にバッチプログラムを作って指定と
あるのですが、方法がよくわからないのです。

よろしければ教えてください。
コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2004-04-24 17:30
ただ 現行の phpinfo(); の Configure Command の引数全部パクッて(コピペ)、新しい
PHP4 を展開したディレクトリ(オリジナルの configure が存在するディレクトリ)に
vi とかで configure.bat とか別名で保存して sh ./configure.bat とやるだけっしょ。

コピペの時、mbstring に付随するオプションが無ければ総て追加。
あつしfx
大ベテラン
会議室デビュー日: 2002/04/08
投稿数: 104
お住まい・勤務地: XPできるところ
投稿日時: 2004-04-24 18:27
僕の場合、
./configure --help > config.help
としてオプションを出力し、
cfと言うスクリプトファイルに必要なオプションをコピーしてます。
詳細は、以下のページに載せてます。
http://www.aglabo.com/agl/proevo/PHP/update/php-4.3.6.html



[ メッセージ編集済み 編集者: あつしFx 編集日時 2004-04-24 18:40 ]
むつまじ
会議室デビュー日: 2004/04/24
投稿数: 3
投稿日時: 2004-05-01 17:29
返信ありがとうございました。
4/29に php4.3.6にアップデートできました。
何度かエラーで、APACHEが起動できなくなりましたが
再インストールで、最終的には動きました。
mbstring関連も組み込まれました。(phpinfo.phpで確認)

理解したというより、返信していただいたメッセージより
わからないながらもアップデートができきたという感じです。

大変ありがとうございました。
1

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