次の記事 | 前の記事

2006-07-11

PHPをリコンパイルしたら真っ白 orz

NP_Thumbnail を使いたいと思い入れてみたが画像がサムネイルにならない。
何でだろうと思い、PHPの状態を確認してみるとGDは使えてPNGもサポートになっているがJPEGがサポートになってないことが判った。
ということで、PHPのリコンパイルを行いました。
そして、Nucleusのページが全て表示されなくなりました。orz...

行った手順は以下のとおり、(ごく普通の一般的な手順です)

./configure .... --with-jpeg-dir=/usr/lib ......
make clean
make

ここで、apacheをストップ

su
make install

apache をスタート

以後、以下の状況になる。

・Nucleusのページが全て表示されない。
・ブラウザ上は真っ白でソースを見るととなっている。
・複数のブログを作っているがそれぞれのURL指定をしても同じ状況。
・インストール先のパス上のファイルが壊れている訳ではなさそう。
・データベースはローカル上での mysql コマンドや内部の別クライアントPCからの ODBC接続では問題なく稼動している。
(全てのテーブルのデータを確認したわけではないが特にデータが壊れているようには見えない)

apache自体は一応動いているようで、Nucleus以外のページは問題なく表示されている。
また、PHPも簡単なサンプルプログラムは動いている。(Mysqlへのアクセスも含めて)
その他、mod_jk経由で連携させている Tomcat の方も問題なく動いている。(別DBですがMysqlへのアクセスも問題なし)
Apacheのログを見ると 200 なのでエラーと言う訳ではないが、レスポンスは無しというような内容。
当然、エラーログには何も吐かれてない。

何でやねん!

ちなみに各プロダクトの大まかなバージョンは
Nucleus のバージョン:3.23 (EUC-JP)
Apache 2.0.X (EUC-JP)
PHP 5.0.X
MYSQL 4.1.X
※かなり、鬼門な組合せらしいですね。

こうなったら、別ディレクトリにNucleusをインストールしてどうなるか試してみよう!

そして、
--------------------------------------------
Error!
Error message was: "Your PHP version does not have support for MySQL :(";
Go Back
--------------------------------------------

何で?
と思って、install.phpを見たところ

if (!function_exists('mysql_query'))
_doError('Your PHP version does not have support for MySQL :(');

あっ!、そうか?!!
ふつふつと記憶がよみがえってくる。なんか、これ対応した覚えがある
ちゃんと記録しとけよ > オレ

「--with-mysqli-dir=?」しか指定しませんでした。今回。。。
「--with-mysql-dir=?」が必要なのですね。はい。そうでした。

--------------------------------------------

つまり Nucleusは mysqli ではなく古い拡張モジュールである mysql が必要であったためDB上のデータが取り出せない状況となっていた訳です。前述の確認に使った簡単なサンプルプログラムは mysqli で動くものだった。

再度、両方のオプション指定を行った状態でビルドし、インストールしたら復活しました。

教訓:設定変えたときはちゃんと記録を残しておこう!

止まってる間に google bot が来て空のページをさらっていきました。。。 orz

これから NP_Thumbnail 入れます。
category03. Nucleus  time2006-07-11 19:28  authorkagekino 

コメント

コメントはまだありません。

コメント追加

このアイテムは閉鎖されました。このアイテムへのコメントの追加、投票はできません。

トラバ

トラバ
トラバピングURL
http://weblog.hip-labo.com/action.php?action=plugin&name=TrackBack&tb_id=16
手動によるトラバは こちらからどうぞ。