【さくら】php-mecabが突然使用できなくなった件

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 領域にいれて使用したほうが解決しやすい。(今回、デフォルト → 自前 に変更した)

KAGOYAのデータベースプランにターミナルでアクセス

KAGOYA のデータベースプラン(SSD 共有)の DB サーバーにアクセスする方法、覚書。

1.kagoya のサーバーコントロールにログインして、データベースをつくる。そのデータベースのアクセス許可にアクセス元の IPアドレス を登録する。自分の場合はさくら共有サーバーのIPアドレス。

2.ターミナルからさくらサーバーにアクセス。さくらサーバーからさくらの DB にアクセスするように kagoya の DB にアクセスする。

コマンド(さくらサーバーにログイン後)
----------------------------------------------------
% mysql -h mysql*****.kagoya.net -u ユーザーID -p --default-character-set=utf8
----------------------------------------------------

以後、さくらの DB を使っているのと同じように kagoya の DB を使用できる。

さくらでphpのバージョンを更新してもバージョンがあがらない

さくらインターネットの共有サーバーで、サーバーコントロールからphpのバージョンを更新したあと、phpinfo でバージョンを確認してもあがってなかった。

php.cgi を公開フォルダに置いていたので、新しいバージョンをコピーし直したらphpのバージョンはあがった。