先日、当ブログをmixhostに移転したところ、wp-cron.phpを使用する2つのプラグイン(BackWPupとSNS Count Cache)が動かなくなりました。
色々と試行錯誤した結果、解決できたので、備忘録として残しておきます。
同じような状況になった人の参考になれば幸いです。
エラーメッセージの内容
WordPressの管理画面で確認できたエラーメッセージは下記。
BackWPupの場合(設定>情報タブ)
期待された HTTP レスポンスではありません:
ステータスコード: 200
X-powered-by: PHP/7.1.1
X-litespeed-cache-control: no-cache
Content-type: text/html; charset=UTF-8
Content-length: 0
Date: Tue, 14 Feb 2017 02:58:58 GMT
Accept-ranges: bytes
Server: LiteSpeed
SNS Count Cacheの場合(設定タブ)
あなたのサイト上でWP-Cronシステムの呼び出し処理に問題が見つかりました。あなたのサイト上でWP-Cronジョブが動作しない可能性があります。問題は次の通りです。
MixHostサーバーでBackWPupやSNS Count Cacheが動かない時の対処法
結論から言うと、PHPのバージョン設定が間違っていただけで、7.1から7.0に再設定したところ、あっさりと動いてくれました。
1.MixHostのcPanelにログインします。
※cPanelのURLは、[MixHost] サーバーアカウント設定完了のお知らせというメールに記載されています。
2.ソフトウェア項目のSelect PHP Versionをクリックします。
3.PHPバージョン 7.0を選び、Set as currentボタンをクリック。
4.下部にあるUse Defaultsボタンをクリック。
5.cPanelホーム画面に戻り、再度Select PHP Versionクリックして、PHPのバージョンが7.0になっていれば作業完了です。
補足
SNS Count Cacheは7.1でも動きますが、両方使いたい方は7.0にする必要があります。
思ったこととか
きっかけはFTPソフトで接続した時に、見慣れないファイルが(error_log)あり、容量がモリモリ増えていったことです。
ファイルをダウンロードし、テキストエディターで開いたところ、BackWPupに関するエラーメッセージが記載されており、これ動いてないかもと気付きました。
それまではSSL化したことによる通信周りの問題だと考えていたので、PHPのバージョンのことなんて全く頭になかったです。
原因解明までに時間はかかりましたが、PHPバージョンの違いでこういうことが起きるという勉強になったので良しとします。
追記
2017/06/21追記
この記事を書いた後、しばらくは問題なく動いていていたのですが、いつの間にかSNS Count Cacheの方はキャッシュされていない状態(動いていない)になっていました。
BackWPupの方は基本は問題なく、たまに調子が悪くなる感じです。(時間が経つと直る状態)
というわけで、現状この問題は解決されていません。ごめんなさい。