検索結果にPDFをインデックスさせない方法
2024年12月10日
今更な感じのタイトルの施策ですが、私が今まで依頼を受けたことがなかったので覚書として記載しておきます。
タイトルの通りなのですがクライアントからユーザーが古い応募書類といったドキュメントを提出してくることが増えて困っているという事が多くなってきました。
昔からあるとは思うのですが近年はサイトをアクセスせずにGoogle検索で情報を入手することが可能になったからかなと想像しています。
GoogleのPDFの認識精度も上がってきていてHTMLと同じようにインデックスされますし、Googleの検索結果もサイトを表示させずにAIがサジェストで文章とファイルなどのリンクを掲載することも多くなってきました。
対処方法は2通り
対処方法は2通りあります。
- robots.txtでクロールさせない
- no indexを付与してインデックスさせない
robots.txtでクロールさせないはGoogleのbotをクロールせないという対応になり、すでにクロールされてインデックスされている場合には効果がありません。またサイト内外からリンクを張られている場合、こちらで設定していてもbotはインデックスしていいかどうか判断できないのでインデックスしてしまいます。
もう一つのno indexを付与してインデックスさせないはその名の通り検索結果に表示させない=インデックスさせないということなのでこちらの対策が必要になります。
HTMLであれば以下のmetaタグを記載します。
<meta name="robots" content="noindex" />
PDFなどの場合はタグを入れれないのでファイル自体にno indexの属性を付与しないといけませんが量が多かったりすると手間が大変なので.htaccessなどで一括して付与することが可能です。
<FilesMatch "\.pdf$">
Header set X-Robots-Tag "noindex"
</FilesMatch>
上記は正規表現で拡張子.pdfにマッチするものにnoindexを付与という処理になります。
さらに細かい設定などは以下のGoogleのヘルプが参考になります。
Robots meta タグ、data-nosnippet、X-Robots-Tag の設定
すでにインデックスされているものを今すぐ検索結果から削除したい場合
大体問題になるのはそういう事由が起こってからになるのでまず対処するのはすでにインデックスされているものを今すぐ検索結果から削除したいということになります。
その場合はGoogleのサーチコンソールで削除リクエストを行います。ログイン後に左画面の削除へ移動します。
こちらのリクエストは申請から少し時間がかかるという点に注意しましょう。リクエスト処理後は表記が「一時的に削除されました」に変わります。
また永久に削除されるのではなく一時的(6カ月)に削除される形なので申請後は以下の処理をかならず行いましょう。
- 不要なものであればサーバから削除
- 必要なものであればno indexを付与
あとrobots.txtでクロールを禁止にしている場合はかならずクロールする処理に変更してください。でないとbotが永久にno indexであると認識してくれません。
検索結果のインデックスの確認についてはサーチコンソールのリクエストの一時除外があまり正確に反映されていなさそうなので、以下の検索方法で実際の検索結果で確認すると良いでしょう。
site:https://example.com/ filetype:pdf