先日、私が運営しているサイトのSearchConsoleを確認したところ、クロールエラーの「アクセスが拒否されました」にとある記事が表示されました。
記事にアクセスが拒否されましたが表示されたのは初めてだったのですが、無事対処できたのでその方法を載せておきます。
はじめに
今回発生したエラーは「アクセスが拒否されました」というものです。
こちらのエラーは、基本的に「リンク先にGoogle botがアクセスできなかった」場合に発生するものだと思うのですが、ここに記事が表示されたのは初めてでした。
原因はそうそう発生するものでは無かったのですが、とりあえず対処法を紹介します。
発生したエラー
今回のエラーが発生した記事のURLが以下です。
「https://clrmemory.com/wordpress/wp-admin-bar-hide/」
このようなURLの記事に「アクセスが拒否されました」が発生していました。
こちらの記事で発生しているエラーの原因を探ろうと「Fetch as Google」で取得しようとしましたが、エラーが発生してしまいました。
現在は、無事エラーの件数を0にすることができ、Fetch as Googleで取得することもできるようになりました。
では解決方法を見ていきましょう。
解決策
今回問題があったのは「URL」と「robots.txt」でした。
私のサイトに設定されている「robots.txt」は以下のようになっています。
User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php
(…略)
こちらにも問題はあったのですが、robots.txtは編集する必要はありません。対処法はURLを変更する必要がありました。
さて、前述した通り「アクセスが拒否されました」が発生したURLは
https://clrmemory.com/wordpress/wp-admin-bar-hide/
です。
このURL踏まえた上で、先ほどのrobotx.txtの2行目をチェックしてみてください。「Disallow: /wp-admin/」という記述がありますよね。
robots.txtでのDisallowは「botのクロールを拒否」する記述なのですが、本来はadmin(管理者ページ)へのアクセスを拒否するためのものです。
ですが今回の場合、私が設定したURLに「wp-admin」が含まれているため、botのクロールを拒否してしまったのだと思います。
これでFetch as Googleのエラーも発生しなくなりました。
ちなみに「/wp-adminbar-hide/」のようにしてみても、エラーの対処にはなりませんでした。
結局「wordpress-adminbar-hide/」というURLに変更することで解決しました。
数日経過し、無事エラーの件数も0件になりました。
まとめ
今回紹介したエラーは、そうそう発生するものではないと思います。
つまり逆を言えばネットで検索しても解決策が発見しづらいということにもなるので、ここで書き留めておきました。
同じようなエラーが発生していて、少しでも解決できていない方の手助けになれば幸いです。
ではまた。