古いWordPressでHTTP500エラー

昔作ったWordpressサイトを思い出し、久しぶりに触ったらHTTP500エラーが出てLogin画面すら開かなくなりました。

そもそも放置がダメ

ひよこ

HTTP500エラーは、 インターナルサーバエラー・内部サーバエラーで、内部プログラムに問題があるときに発生するエラーです。

wp-config.phpを編集しエラーメッセージを表示させたところ、原因が分かりました。

//これを
define('WP_DEBUG', false);
//こう
define('WP_DEBUG', true);

原因はレンタルサーバのPHPバージョンの更新でした。更新により削除された関数がありエラーが出てました。うちの場合は”eregi”という関数で、これを”reg_match”関数に置き換え、無事、ログインできるように。

ログインできればこっちのもので、早速、Wordpressを最新版に更新し、プラグイン類、テーマも最新のものへ更新しました。


同じサイトでRSS生成に使っていたMgpieRSSも停止していました。こちらの原因もWordpressと同じで、 rss_parse.incファイル の”split”関数を”preg_split”関数に置き換えて無事動作するように。

参考 MagpieRSS: RSS for PHP MagpieRSS

//これを
list($ns, $el) = split( ":", $element, 2); 
//こう
list($ns, $el) = preg_split( "/:/", $element, 2); 

WordPressサイトはノーメンテナンスだとセキュリティ面のリスクが高くなります。保有サイトは、定期的にメンテナンスし最新版に保つなり、閉鎖するなりしないといけませんね。(自戒)



参考サイト:
PHP5.3以降で「Deprecated(非推奨)」となっている「ereg」関数を「preg_match」関数に変更してエラーを消す方法 | 今村だけがよくわかるブログ
phpのeregでDeprecatedエラーが出てるから調べてみたら使えなくなるという非常事態が発生 | ぷろめし|プログラミングよりも飯が好き
MagpieRSSをPHP7で動かすと… | カキノタ:IT-Life

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です