WordPressのプラグイン、YoastSEOやGoogleSiteKitでエラーが出て一向にデータが読み取れない…。
ついでに、GoogleSearchConsoleでもリダイレクトエラーなるものが…。
これも何か無関係とは思えないんですよね…。
結論
サーバーの設定でREST APIの海外アクセス制限を無効化したら解決しました。
セキュリティ設定をOFFにするのはなんか気が引けて嫌な感じですが…。しゃーなしですね。
原因を探った話
せっかくなので試したものを色々と…。
リダイレクトエラー?
まず、GoogleSearchConsoleでリダイレクトエラーが出ていました。 httpがリダイレクトエラーらしい…。
しかし、httpのアドレスを打ち込むと、しっかりとhttpsにリダイレクトされる。 リダイレクトツールで見てみても、特に問題なし。
う〜ん。
サーバーのセキュリティ?
次に、YoastSEOのエラーの詳細を見ると、Cookieチェック失敗(403エラー)と出ていました。
YoastSEOとGoogleSiteKit…どちらもサイトを解析するツールなので、何か共通の原因がありそうです。
Cookieの削除とパーマリンクの保存し直し
ブラウザのCookieを削除してみましたが関係なし。
サイトでエラーがある場合は、パーマリンクの保存をし直すと治ることが多々あるので実行してみましたが、関係なし。
他のプラグインを無効にする
YoastSEO以外のプラグインを無効にして、再度試してみました。しかし、無念。
セキュリティを無効にする
次に、サーバーのセキュリティの諸々を無効化してみました。 WAF、海外アクセス制限など。
関係ないみたいでした。 (関係なかったのでちゃんとONに戻しました!)
テーマを変える
自作テーマが問題かな?と思って、テーマを変更。
しかし、関係なし。
…ンモー!🐮 どういうことだってばよ。
同じサーバーの他のサイトで試す
これがこのサイトだけなのか知るために、同じサーバーのテストサイトでYoastSEOを入れてみました。すると、問題ナシ!
やはり、サーバーの問題ではなくサイトに何か問題があるみたいです…。ウーン。
他のサイトと違うところはナンジャラホイと考えたのですが、もしかしたらwp-config.phpでサイトURLを書き換えてるからかな…とか思って。
こういうやつです。
define( 'WP_HOME', 'http://example.com' );
define( 'WP_SITEURL', 'http://example.com' );
これを消してみました。前はこれじゃないとうまくいかなかったんだけど、消しても問題なかった。なんだ。
そして、コントロールパネルの方でちゃんと設定し直しました。ま、関係なかったんですけど…。
GoogleSiteKitにヒントが!
ここにきて、Google Site Kitが特大ヒントをくれました。
サイトURLの編集をしたところ、Google Site Kitとの接続が切れ、再接続が必要に。
すると、こんなエラーが…!
「Site KitがWordPress REST APIにアクセスできません」だと…!?
REST APIってなんか聞いたことあるぞー。さっき無効化試したやつだ。
REST APIの海外アクセス制限を無効化
しょうがないので、もう一度無効化を試してみました。 無効化するだけではダメだったので、管理画面のログインをし直してから再チャレンジ!
すると…!なんと、成功!成功です!!感涙。Google Site Kitも、Yoast SEOも無事に接続しました。
いやはや〜長かったね。
でも、Yoast SEOの解析を試したテストサイトの方はアクセス制限は有効になってたんですよね。なんなんだろう。
セキュリティが弱くなったみたいでちょっと心配ですが、ひとまず一旦は落ち着きました。めでたし。
リダイレクトエラーの件
そちらはよくわからない…。数日経過を見てみます。