レンタルサーバのXServer上で動かしてるXOOPSが真っ白になっているということで調査開始しました。
まず、PHPエラーを調べるために、phpMyAdmin で MySQL の xoops_config テーブル conf_name列= debug_mode レコードの conf_value の値を1にします。
これでリロードするとこんなエラーが。。
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}'
in /home/ユーザ名/public_html/xoops/modules/Analyzer/preload/Preload.class.php on line 10
なんか文法エラーとか言ってます。
このファイルは更新した記憶はまったくないので、もしかしてと思って phpinfo で実行環境の情報を探ってみました。
すると、PHP5 で動かしてたはずなのに、PHP4 になってます。
とりあず、PHP5 に戻せば動くと思って、ServerPanel の "PHP Ver.切替" より PHP5 に戻しました。
その後なぜPHP5から4になってしまったかの調査です。
調べていくと、Xserver は PHP4 と 5 の切り替えは、public_html/.htaccess の中で
AddHandler x-httpd-php5 .php .phps
という定義で行っていることが分かりました。
つまり、この記述がないと PHP4 で動くみたいです。
そういえば、PEAR の include_path を設定するときにこの辺触ったので、その時にこの記述を上書きしてしまったことが今回の障害の原因のようです。