Page Top
Webサイトを運営する上で、検索エンジンのクローラーがどのページをクロールし、どのページを無視するべきかを指定するためのファイル「robots.txt」は非常に重要であることはあまり知られていないのかもしれません。
robots.txtを適切に設定することで、検索エンジンにクロールの指示を与え、インデックスさせたくないページやファイルを保護することができます。
本記事では、robots.txtの役割や作成手順、そしてその書き方について詳しく解説します。
<この記事で紹介する3つのポイント>
目次
robots.txtはWebサイトのルートディレクトリに配置されるテキストファイルで、検索エンジンのクローラーに対してクロールしてほしいページと、クロールを避けるべきページを指示します。
具体的には、「User-agent」でクローラーを指定し、「Disallow」でクロールを禁止するURLを設定することが一般的です。
これにより、検索エンジンのインデックスに載せたくないページや、公開していないコンテンツを守ることができます。
またクローラーが無駄なリソースを消費しないように制御することも可能です。
robots.txtを正しく設定することで、Webサイト全体のSEOパフォーマンスを向上させることができることを知っておくとよいでしょう。
robots.txtファイルの作成はシンプルですが、いくつかのポイントに注意が必要です。
まず、テキストエディタ(例:メモ帳やVSCode)を使用して、ファイル名を「robots.txt」として新規作成します。
次に、指定したいクローラーとその指示を記述します。
たとえば、すべてのクローラーに対して特定のページをクロール禁止にする場合、「User-agent: *」とし、その後に「Disallow: /example/」と記述します。
記述が完了したら、ファイルをUTF-8で保存し、Webサイトのルートディレクトリにアップロードします。
robots.txtの設定を正確に行うことが、サイト全体の適切なクロールに繋がります。
ここでは実際に作成する場合を想定して
の2つについて解説します。
robots.txtファイルを作成する方法は非常に簡単で、テキストエディタさえあれば誰でも作成できます。
まず、テキストエディタを開き、クローラーに対する指示を記述します。
一般的な構文は「User-agent」と「Disallow」ですが、特定のクローラーのみを対象とする場合は、「User-agent」の後にそのクローラー名(例:Googlebot)を記述します。
次に、クロールを禁止するURLやディレクトリを「Disallow: /example/」のように指定します。
必要に応じて、「Allow」コマンドを使用して特定のページを許可することもできます。
最後に、ファイル名を「robots.txt」として保存し、サイトのルートディレクトリに配置します。適切に設定されたrobots.txtファイルは、Webサイトのクロール効率を高め、不要なページのインデックスを避けるために重要です。
作成したrobots.txtファイルをサーバーにアップロードする際には、いくつかの方法があります。
最も一般的なのは、FTPクライアントを使用する方法です。
まず、FTPクライアント(例:FileZilla)を開き、サーバーに接続します。
接続が成功したら、サーバー側のディレクトリツリーを表示し、Webサイトのルートディレクトリ(通常は「/public_html/」や「/www/」)を見つけます。
このディレクトリに、事前に作成したrobots.txtファイルをドラッグ&ドロップするだけでアップロードが完了します。
また、cPanelやPleskなどの管理ツールを使用して、ファイルマネージャーから直接アップロードすることも可能です。
アップロード後は、Webブラウザを使用して「https://yourdomain.com/robots.txt」にアクセスし、正しく配置されているか確認します。
robots.txtの書き方には、いくつかの基本的な構文があります。
robots.txtの記述には慎重さが求められ、不適切な設定はSEOに悪影響を及ぼす可能性があるため、注意深く書くことが重要です。
ここではrobots.txtの書き方として
の4つの書き方について解説します。
「User-agent」の指定方法は、robots.txtの設定において重要なポイントであるでしょう。
「User-agent」は、特定の検索エンジンのクローラーを指定するために使用します。
一般的には、すべてのクローラーを対象とする場合は「User-agent: *」と指定します。
特定のクローラーを対象とする場合は、そのクローラーの名前を記述します。
たとえば、Googleのクローラーを対象にする場合は「User-agent: Googlebot」とします。
他にも「Bingbot」や「Yahoo! Slurp」などのクローラー名を指定することができます。
これにより、指定したクローラーが特定の指示に従うようになります。
適切に「User-agent」を指定することで、サイトのクロール管理がより細かく行えるようになります。
Googleのクローラー「Googlebot」は、Webページのインデックスを作成するために頻繁に使用されるため、その動作をコントロールすることがSEOにおいて非常に重要です。
Googlebotに対して特定の指示を与えるには、robots.txtファイルで「User-agent: Googlebot」と指定し、その後に「Disallow」や「Allow」を用いて、クロールを禁止または許可するページやディレクトリを設定します。
たとえば、「User-agent: Googlebot」「Disallow: /private/」とすることで、Googlebotが「/private/」ディレクトリ内のページをクロールしないように指示することができます。
また、GooglebotはサイトのSitemapを確認するため、「Sitemap」コマンドを使用して、SitemapファイルのURLを記述することも推奨されます。これにより、Googlebotはサイトの構造を効率的に理解し、クロールの精度を向上させることができるようになります。
Googlebot以外にも、さまざまな検索エンジンのクローラーが存在し、それぞれに対して個別に指示を与えることが可能です。
たとえば、Bingのクローラー「Bingbot」、Yahooのクローラー「Yahoo! Slurp」などがあります。
これらのクローラーに対しても、robots.txtファイルで「User-agent: Bingbot」や「User-agent: Slurp」と指定し、必要な指示を記述できます。
また特定のボットやスパムクローラーに対してクロールを禁止したい場合も、「User-agent」を使って設定できます。
一般的なクローラーに対する設定は、「User-agent: *」で全体を包括的に管理することが多いですが、特定のクローラーに対する精密な制御が必要な場合には、個別に記述することが効果的です。
これにより、サイトのセキュリティやパフォーマンスを保ちながら、クローラーの動作を適切に管理できます。
「Disallow」は、robots.txtにおいて特定のページやディレクトリへのクロールを禁止するためのコマンドです。
このコマンドを使用することで、クローラーが特定のコンテンツにアクセスしないように指示できます。
たとえば、プライベートな情報が含まれる「/private/」ディレクトリへのアクセスを禁止する場合、「Disallow: /private/」と記述します。
もしサイト全体をクロール禁止にしたい場合は、「Disallow: /」と書くことで、すべてのページがクロールされないようになります。
また、複数のページやディレクトリを指定することも可能です。
「Disallow」コマンドは、検索エンジンにインデックスさせたくないコンテンツを守るために必要不可欠な設定です。
サイト全体のアクセス制限を行うためには、robots.txtファイル内で「Disallow: /」を指定します。この設定により、すべてのクローラーがサイト内のあらゆるページへのアクセスを禁止されます。
この設定は、サイトが開発中である場合や、一時的にクロールを停止したい場合に有効です。
ただし、検索エンジンによっては、サイト全体をクロール禁止にすると、インデックスが削除される可能性があるため、慎重に検討する必要があります。
適切なアクセス制限を設定することで、サイトのプライバシーを守りながら、クローラーのリソース消費を最小限に抑えることができるようになります。
ディレクトリ単位でアクセス制限を行うには、robots.txtで特定のディレクトリを指定し、「Disallow」コマンドを使用します。
たとえば、「/private/」ディレクトリをクロール禁止にする場合、「Disallow: /private/」と記述します。これにより、「/private/」以下のすべてのページやファイルがクローラーによってアクセスされなくなります。
この設定は特定のコンテンツを非公開にしたい場合や、プライベートな情報が含まれるディレクトリを保護するために使用されます。
また、複数のディレクトリに対して同様の設定を行うことも可能です。
ディレクトリ単位でのアクセス制限は、サイト全体のセキュリティを向上させる重要な手段ですので、覚えておくとよいでしょう。
URLごとにアクセス制限を設定する場合、robots.txt内で個々のURLを「Disallow」コマンドで指定します。
たとえば特定のページ「/example.html」をクロール禁止にするには、「Disallow: /example.html」と記述します。
この設定により、そのURLに対するクローラーのアクセスが禁止されます。これは特定のファイルやページのみをクロール禁止にしたい場合に便利です。
また、同じディレクトリ内でも特定のファイルだけを制限したい場合に、この方法を使用します。URL単位でのアクセス制限は、特定のコンテンツを検索エンジンのインデックスから排除するための効果的な手段です。
robots.txtでパラメータを含むURLのアクセス制限を行うには、特定のパターンを「Disallow」コマンドで指定します。
たとえばクエリパラメータ「?sessionid」を含むURLをクロール禁止にする場合、「Disallow: /*?sessionid」と記述します。この設定により、「?sessionid」が含まれるすべてのURLがクローラーによってアクセスされなくなります。
パラメータを使用したURLは動的に生成されることが多く、同じコンテンツが複数のURLで表示される可能性があるため、SEOにおいては重複コンテンツの問題を引き起こすことがあります。
このようなケースでは、robots.txtを活用して適切に制限を設けることが重要です。
「Allow」コマンドは、robots.txtファイルで特定のページやディレクトリへのクロールを許可するために使用されます。
通常、特定のディレクトリ全体をクロール禁止にしつつ、その中の特定のページだけを許可したい場合に使用されます。
たとえば、「Disallow: /private/」で「/private/」ディレクトリをクロール禁止にしつつ、「Allow: /private/public-page.html」でそのディレクトリ内の特定のページだけを許可する設定が可能です。このように、「Allow」コマンドを適切に使うことで、より細かい制御が可能になり、クローラーが重要なページを逃さずにクロールできるように調整することができます。
robots.txtファイルには、「Sitemap」コマンドを用いて、サイトマップのURLを記述することができます。
これにより、検索エンジンのクローラーがサイトマップを見つけやすくなり、サイト全体の構造を把握しやすくなります。¥
記述方法は非常にシンプルで、ファイルの最後に
「Sitemap:https://yourdomain.com/sitemap.xml」
と書きます。
このURLは、実際にサイトマップが置かれている場所に合わせて変更します。
Sitemapの記述は、特に大規模なサイトや複雑な構造を持つサイトにおいて、クローラーの効率を高め、インデックスの質を向上させるために非常に有効です。
robots.txtを使用する際には、いくつかの注意点があります。
ここでは重要な注意点として
の2つの注意点について解説します。
これらの注意点を踏まえた上で、robots.txtを慎重に設定し、定期的に確認することが重要です。
robots.txtを用いたクロール禁止設定には、「インデックス削除」のリスクが伴います。
具体的には、すでにインデックスされているページを「Disallow」でクロール禁止にすると、そのページが検索結果から完全に削除される可能性があります。
これは特にSEOに悪影響を与えるため、重要なページに対しては慎重に設定を行う必要があります。
もし、インデックスされたくないページがある場合は、robots.txtではなく、メタタグ「noindex」を使用することが推奨されます。
「noindex」は、クローラーがそのページをインデックスしないように指示するタグであり、インデックス削除のリスクを最小限に抑えつつ、SEOに悪影響を与えない設定が可能です。
したがって、robots.txtとメタタグの使い分けをしっかりと理解することが重要です。
robots.txtファイルでは、複数の「User-agent」や「Disallow」「Allow」の指示が含まれることがありますが、クローラーがどの指示に従うべきかについての優先順位があります。
基本的には、より具体的な指示が優先されます。
たとえば、「User-agent: *」で全クローラーを対象にした後に、「User-agent: Googlebot」で特定の指示を与えた場合、Googlebotには後者の指示が適用されます。
同様に、「Disallow」と「Allow」が同じURLに対して設定されている場合、より詳細な指示が優先されます。
これにより、クローラーの動作を細かく制御することが可能です。
robots.txtファイルの内容を正確に確認するためには、Google Search Consoleの「robots.txtテスター」ツールを使用することが推奨されます。
このツールを使うことで、実際に設定した内容がクローラーにどのように解釈されるかをシミュレートでき、誤った設定がないかを事前に確認できます。
特に、大規模なサイトや複雑な設定を行っている場合は、テスターを利用して設定ミスを防ぐことが重要です。
テスターでは、特定のURLが「Disallow」や「Allow」の指示通りに動作するかをチェックできるため、効果的なrobots.txtファイルの運用に役立ちます。
robots.txtテスターを効果的に活用するためには、まずGoogle Search Consoleにアクセスし、対象サイトを選択します。
次に、「robots.txtテスター」ツールを開き、現在のrobots.txtファイルの内容を確認します。
ここで、特定のURLを入力し、クロールが許可されているかどうかをテストします。エラーが発見された場合は、即座に修正が可能です。
また、修正内容をテスターで再度チェックすることで、確実に設定が反映されているかを確認できます。
このように、robots.txtテスターを定期的に使用することで、SEO対策をより効果的に行うことが可能になることを覚えておくとよいでしょう。
「/ranking/osaka」のブロックを確認するには、まずGoogle Search Consoleのrobots.txtテスターを使用します。
このツールに「/ranking/osaka」のURLを入力し、クロールが許可されていないかを確認します。
テスターは、指定されたURLに対して適用される「Disallow」コマンドの影響を示してくれます。
もしブロックが正しく設定されていない場合は、即座にrobots.txtファイルを修正し、再度テストを行います。
このプロセスを通じて、特定のページやディレクトリが確実にクロール禁止となっているかを確認でき、意図しないクロールを防ぐことが可能です。
またブロック設定を変更する際には、テスターを利用して確実に新しい設定が反映されていることを確認することが重要です。
/ranking/」ディレクトリ全体をクロール禁止にしたい場合、まずGoogle Search Consoleのrobots.txtテスターを使用して設定を確認します。
このツールで「/ranking/」と入力し、クロールが適切に禁止されているかをテストします。
もし「Disallow: /ranking/」が正しく機能していない場合、ファイルを修正し、再度テストを行います。
また、特定のページだけを許可したい場合は、「Allow」コマンドを追加し、テスターで確認します。
テスターを用いることで、ディレクトリ全体のクロール設定が意図通りに機能しているかを確かめることができ、不要なページが検索エンジンにインデックスされるのを防ぐことが可能です。
この記事では、robots.txtの役割や作成手順、具体的な記述方法について詳しく解説しました。
robots.txtは、ウェブサイトのSEOにおいて非常に重要なファイルであり、適切に設定することで、サイトの検索エンジン最適化を効果的に行うことが可能です。
また、robots.txtテスターを活用することで、設定ミスを防ぎ、クローラーの動作を正確に制御できます。
正しいrobots.txtの運用は、サイトのパフォーマンスを向上させる鍵となるので、この記事がお役に立てると幸いです。
以上のことを考慮しながらwebサイトを制作・運営することは特に初心者の方にとってはハードルが高いのではないでしょうか。
豊富な制作実績がある弊社サービスのwebサイト制作・運用のご利用をご検討いただければと思います。
「世界で一番社会を変える会社を創る」というビジョンのもと、WEB事業、人材事業、医療事業を中心に多角的に事業を展開し、世界で一番社会貢献のできる会社を目指しています。時代の変化に合わせた新規事業を生み出しながら世界中を変革できる「世界を代表するメガベンチャー」を目指し、日々奮闘しています。
SNS広告
(Instagram、Facebook、Twitter、LINE、TikTok)
SNSアカウント運用代行
(Instagram・Facebook・Twitter・LINE・TikTok・Youtube)