【さくら】php-mecabが突然使用できなくなった件(PHPバージョン変更が原因?)

この記事について

環境さくらレンタルサーバー、PHP、php-mecab
目的php-mecabを使用しているページがFatal error(Class Mecab not found)になったのを直す
結果mecabとphp-mecabを入れ直して解決

つまずきポイント要約

  • さくら側でPHPのバージョンが勝手に変更されたのが原因だと思う
  • 古いmecab/php-mecabのファイルは念のため削除してから入れ直す
  • php-mecabインストール時のPHPバージョン指定は新しいバージョンに合わせる
  • デフォルトのmecabより自前でlocal領域に入れたほうが解決しやすい

事象

php-mecab を使用してるページがエラーしか表示されなくなった。

表示されたエラー

Fatal error: Class 'Mecab' not found in /home/username/www/xxxx.html on line 20

原因

推測だが、さくらインターネットの PHP のバージョンが勝手に変更されたのが原因だと思う。phpinfo で mecab が表示されない。つまり、php-mecab が認識されていない。

対処

mecab および php-mecab を入れ直した。

入れ直し時に注意すること。

・mecab と php-mecab の古いファイルは念のため削除しておく。上書きされるかと思ったがうまくいかなかった。(これがうまくいかない原因だったかは不明)

・php-mecab のインストール時に php のバージョンを指定する箇所があるので新しいバージョンに合わせる。

・さくらにデフォルトインストールの mecab に問題があった場合解決が難しいので、自前の mecab を local 領域にいれて使用したほうが解決しやすい。(今回、デフォルト → 自前 に変更した)

関連記事

タイトルとURLをコピーしました