Google Search Consoleを利用してクロール手配を行った後に、Search Consoleから「ページがインデックスに登録されない新しい要因」のメールが飛んできた件。
Google Search Consoleからメールが届いた
実際に届いたメールは↓
特にnoindex指定をするような設定はしていなかったので何でだろう?と原因特定を始めた訳で。
Google Search Consoleで詳細を確認
Consoleのメニューから「ページ」を選択し、「noindex タグによって除外されました」の行をクリックし、インデックス拒否したリストを見てみると投稿記事自体がnoindexを返していて、インデックス登録から除外されてるじゃねーか!?
多くの方に~~!なんて大層な思いは無いですが、誰かの気付きになればという思いもあるので対応をする事に。
WordPress自体の設定に問題はない
先に記載の通り、基本設定や投稿記事自体にnoindexを付与するような設定痕跡は無し.
ん~… と言うことで、Chromeの開発者ツール(F12)を用いて、レスポンスヘッダーにクロールを阻害するようなヘッダー情報が付与されているかの確認を実施した結果、付いてる…
‘X-Robots-Tag‘ヘッダーに「noindex,follow」が宣言されてる。
無論、導入しているプラグインの設定確認・キャッシュ削除を実施し確認するも変化なし.
あわせて、robo.txtにもnoindexが宣言されていないことを確認。
ここで一点疑問が浮かぶ。
WordPressのnoindexってHTTPヘッダでnoindexを返す仕様なのか…?
metaタグやrobot.txtでクロールさせない様にしているんじゃなかったっけ?
※この辺りの理解度が低い.
! ヘッダーで返してるってことは、Nginxの設定に問題があるんじゃ…
と言うことで、とりあえず確認してみた。
- nginx.conf
add_header X-Robots-Tag “noindex, nofollow” always;
あったぁ…
Nginxの共通コンフィグレーションとして宣言してた!
ということで、特にクロールされて困るようなサイトを開設していないのでコメントアウト.
再度、開発者ツールでHTTPヘッダーを確認したら「X-Robots-Tag」が付与されていなかった.
consoleから「修正したので、再度クロールしてね。」依頼を行い〆。
無用にGoogleにインデックス登録される事を避けるために共通コンフィグで全サイトに対して設定していたのをすっかり忘れてた.
良かれと宣言していたパラメータながら、こんなところに影響が出るとは..
面倒でも個々のサイト用にコンフィグレーションを細かく宣言する方が良いなという学びになりました。
コメント