【SWELL】サーチコンソールのクロールの統計情報で4XXエラーが多発する事象について
サーチコンソール見てたら4XXエラーが多発してた、、
これは大丈夫なのか大丈夫じゃないのか、、
SWELLを使っていてよくサーチコンソールを眺めている人の中には、クロールの統計情報を確認している人も多いかと思います。
その中で「その他のクライアント エラー(4XX)」というエラーが出ていることに気づいている方はいますでしょうか。
SWELLのアップデート後からこのエラーが出て不思議に思っていた方は僕だけじゃないはずです。
今回はこの「その他のクライアント エラー(4XX)」についてまとめていこうと思います。
ちなみに4XXエラーが起きていない人もいるらしい?です。(フォーラムでも一時話題に上がりましたが投稿者以外再現しないということで解決済みにされていました。)
その他のクライアント エラー(4XX)って何が起きている?
その他のクライアント エラー(4XX)の原因箇所
まず「その他のクライアントエラー」とは何かというところを確認していきます。
下記の画像が実際に当ブログのサーチコンソールで発生しているエラーの抜粋になります。
エラーを見ていくと発生しているのは下記の4つのURLになります。
URL | 説明 |
---|---|
/wp-json/wp/v2/swell-lazyload-contents | 遅延読み込み用のURL |
/wp-json/wp/v2/swell-ct-ad-data | 広告タグ計測用のURL |
/wp-json/wp/v2/swell-ct-pv | PV計測用のURL |
/wp-json/wp/v2/swell-ct-btn-data | ボタン計測用のURL |
これらはREST APIという技術で通信を発生させるもので、SWELLのVer.2.5.1よりひっそりと実装されました。(それまではajaxという非同期通信を用いた手法を取っていたようです。)
そのためver.2.5.1が配信された2021年9月11日からエラーが発生しているということになります。
4XXとはどういうエラーなのか
4XXエラーとはHTTPのコードで「クライアントエラー」を示す、400番台のエラーコードの総称です。
アクセスしたページが存在しない際に発生する404エラーなどが有名です。
では、今回は400番台のエラーの中で何が発生しているのかを確認します。
サーチコンソールだとこれ以上分からないので、サーバー上のアクセスログでgoogle.botのアクセスを参照します。
[27/Nov/2021:15:12:54 +0900] “POST /wp-json/wp/v2/swell-lazyload-contents HTTP/1.1” 403 …
[27/Nov/2021:14:37:55 +0900] “POST /wp-json/wp/v2/swell-ct-ad-data HTTP/1.1” 403 …
[27/Nov/2021:7:26:55 +0900] “POST /wp-json/wp/v2/swell-ct-pv HTTP/1.1” 403 …
上記は当ブログのログになるのですが、それぞれサーチコンソールで読み込まれたものと同じURLが出力されています。
その中で赤太字で示した「403」が今回のエラーコードになっています。
「403」エラーはURLは存在するがアクセスを拒否された場合に発生します。
今回のケースに当てはめると、PV計測用のURLをクローラーが踏もうとしているのをSWELLが拒否しているという形になります。
PV計測用のURLにクローラーがアクセスしてきたらPVがおかしなことになるので、クローラーを拒否するというのは間違ってなさそうです。
広告タグの計測用URLなども同じですね。
サーチコンソールの4XXエラーは無視でOK?
正直、403エラーを無視していいかと言うと意見が割れそうなところではあります。
クローラーの仕様は不明なところが多いためOK/NGは判定できないですが、下記の内容を確認頂いて各自判断頂ければと思います。
サーチコンソールのヘルプを参照した場合
サーチコンソールのヘルプには下記のような記述があります。
その他のクライアント エラー(4XX): ここに記載されていないその他の 4XX(クライアント側)エラー。これらの問題を修正することをおすすめします。
https://support.google.com/webmasters/answer/9679690?hl=ja
修正をおすすめするということなので必須という感じはしないですが、改善はした方が良いと言っているようにも聞こえます。
その他のサイトではどういっているか
天下のホームページ作成ツール「WIX」の見解だと下記の内容になります。
サイトをパスワード保護したり、サイト会員限定ページに設定したりすると、Google は 403 エラー(forbidden)を受け取り、クロールエラーにサイトページを記録します。
https://support.wix.com/ja/article/google-search-console%EF%BC%9A403-%E3%82%A8%E3%83%A9%E3%83%BC%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8#:~:text=%E7%89%B9%E5%AE%9A%E3%81%AE%20URL%20%E3%81%AB%E5%AF%BE%E3%81%97,%E3%82%92%E5%86%8D%E5%BA%A6%E7%A2%BA%E3%81%8B%E3%82%81%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82
この様なエラーが表示されても心配することはありません。Google はアクセスができないページがあることを警告しているだけで、サイトの SEO には悪影響を与えることはありません。これらのページは検索エンジンにインデックス(表示)されることはありません。
特定の URL に対して 403 エラーメッセージが表示される場合は、サイトページを確認し、ページのアクセス制限が正しく設定されていることを再度確かめてください。
SEOには影響しないのでは?と言うことが書かれています。
その他のクライアント エラー(4XX)を回避する方法
robots.txtでブロックする
クローラーを回避する方法は何パターンかありますが、一番簡単なのは「robots.txt」を設定することだと思います。
robots.txtへは下記の4行を追記するだけでOKです。
Disallow: /wp-json/wp/v2/swell-lazyload-contents
Disallow: /wp-json/wp/v2/swell-ct-pv
Disallow: /wp-json/wp/v2/swell-ct-ad-data
Disallow: /wp-json/wp/v2/swell-ct-btn-data
当ブログは下記のような設定になっています。
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-json/wp/v2/swell-lazyload-contents
Disallow: /wp-json/wp/v2/swell-ct-pv
Disallow: /wp-json/wp/v2/swell-ct-ad-data
Disallow: /wp-json/wp/v2/swell-ct-btn-data
Allow: /wp-admin/admin-ajax.php
Sitemap: https://sorairolog.com/sitemap.xml
robots.txt設定後は、「公開URLをテスト」を実施しテスト結果できちんとブロックされていることを確認しましょう。
robots.txtの設置方法はネット検索してもらえれば大量に情報が出るはずです。(1記事書けるぐらいの内容になりそうなのでここでは端折らせて頂きます笑)
swell-lazyload-contentsだけ少し系統が異なる
「swell-lazyload-contents」は遅延読み込み用のURLですが、これはクローラーが読めなくていい部分なのか少し疑問が残ります。
そういったところで他の計測用URLとは系統が異なっていると思っています。
SWELLの設定を確認したところ、SWELL設定の高速化タブにある「記事下コンテンツを遅延読み込みさせる」と「フッターを遅延読み込みさせる」からチェックを外すと「swell-lazyload-contents」は読み込まれなくなるようです。
高速化と折り合いが付くようであれば、こちらのチェックをオフにしておくのもありかと思います。
まとめ
ということで、SWELLを使用した際にクロールの統計情報で4XXエラーが多発する事象についてまとめました。
事象的には全員発生しているような気がするけどあまり話題に上がらないので、本当に自分だけしか発生していないものなのかと思ってしまいます。
類似の事象に遭遇している人はぜひ参考にしていただければと思います。