取りあえず現サーバで動作させたい場合、参考にしてみて下さい。
同じ現象を発生させる事ができ、当面の対応についても記述してみました。
対応については、申し訳ありませんが自己責任でお願いします。
誤り,もっと良い方法があればフォローお願いします > ご覧の皆様
以下を見ると
help.joomla.jp/installmanual15/341-minim...em-requirements.html
4.3.10 or above なので、Joomla! のバグだとも言えそうですが。
【現象再現環境】
PHP: 4.4.4-8+etch6
Joomla!: 1.5.7
ただ、質問に書かれている 「1.5.6 でも同じような状況でした。」に少し疑問が
残ります。1.5.6 ja-JP ではこの現象は出ませんでした。
ソースを検索したのですが、1.5.6 ja-JP では stripos() を利用していない様に
見受けられます。
※1.5.7 にバージョンアップした際のファイル内で利用している様なのですが。
【原因】
PHP のバージョン 4 では、stripos() 関数自体が存在しない様です。
【対処について】
下記ファイルは、RSS,Atom feed 用ライブラリの様ですがこれを利用すれば
簡単に対応出来そうです。
ファイル
libraries/simplepie/simplepie.php
内の、
function stripos($haystack, $needle, $offset = 0)
【対処法】
上記対処についての実現方法です。
libraries/joomla/environment/uri.php
を以下で修正します(戻せる様、バックアップを取って修正して下さい)。
675行目 をコメントにする(元を残すためだけです)
676,677行目 を下記内容で追加
671 function isInternal($url) {
672 $uri =& JURI::getInstance($url);
673 $base = $uri->toString(array('scheme', 'host', 'port', 'path'));
674 $host = $uri->toString(array('scheme', 'host', 'port'));
675 // if(stripos($base, JURI::base()) !== 0 && !empty($host)) {
676 require_once(JPATH_BASE.DS.'libraries'.DS.'simplepie'.DS.'simplepie.php');
677 if(SimplePie_Misc::stripos($base, JURI::base()) !== 0 && !empty($host)) {
678 return false;
679 }
680 return true;
681 }
【余談】
help.joomla.jp/installmanual15/341-minim...em-requirements.html
のMySQL 3.23.x or above 記述にも問題があるのでは?
MySQL は、4.1 以上でないと UTF-8 が利用出来ないので検索に問題が起きると思います。
上記URLは、英語版の話ですかね?
→さくらサーバの MySQL は、4.0 なので Joomla! にはお勧め出来ないと思います。
(検索系以外は、問題なく動いている様ですが。
私はさくら利用しているので検索は自作です。)