自社サイトの検索順位が思うように伸びない、管理画面まで検索に出てしまう。そんなとき気になるのが、robots.txtの設定です。名前は聞いたことがあっても、書き方となると手が止まる方は多いのではないでしょうか。
先にお伝えすると、robots.txtの書き方は「User-agent・Disallow・Allow・Sitemap」の4つの命令を覚えれば十分です。検索エンジンのクローラーに巡回してよい範囲を伝え、不要なページの巡回を抑えるテキストファイルと言えます。
本記事では6つのテーマを順に解説します。robots.txtの仕組み・基本の書き方・コピペで使える設定例・設置と確認方法・よくある失敗・中小企業の安全な運用です。検索エンジンのクロールを正しく整えたい発信担当者の方に、お役に立てれば幸いです。
robots.txtとは|検索エンジンのクロールを制御するファイル
robots.txtとは、検索エンジンのクローラーに「どのページを巡回してよいか」を伝えるテキストファイルです。クローラーとは、Webサイトを巡回して情報を集めるプログラムのこと。サイトの入口に1枚置くだけで、巡回の方針を指示できます。
| 軸 | robots.txt(Disallow) | noindex |
|---|---|---|
| 役割 | 巡回を制御する | 検索結果への表示を制御する |
| 止めるもの | クローラーの巡回 | 検索結果への掲載 |
| 検索結果への表示 | URLだけ残る場合がある | 確実に表示されなくなる |
| 適した用途 | 巡回負荷を下げたいページ | 検索結果に出したくないページ |
robots.txtの役割とクローラーとの関係
robots.txtの役割は、クローラーの巡回を交通整理することです。検索エンジンはサイトを訪れると、まずrobots.txtを読み、巡回してよい範囲を確認します。いわば、サイトの入口に立つ案内係です。
なぜ巡回を整理するのか。理由は、検索エンジンが1サイトに割く巡回の量に限りがあるためです。重要でないページの巡回を抑えれば、評価してほしいページへ巡回が向きます。大規模サイトほど、この交通整理の効果が効いてきます。
ただし、robots.txtはあくまで「お願い」です。主要な検索エンジンは指示に従いますが、悪意あるプログラムは無視するケースも存在します。秘密にしたい情報をrobots.txtで守ろうとするのは、見当違いと覚えておきましょう。
robots.txtでできること・できないこと
robots.txtでできることは、クローラーの巡回範囲の指定です。特定のディレクトリやファイルへの巡回を止めたり、サイトマップの場所を知らせたりできます。巡回の「入口」をコントロールする道具と捉えると分かりやすいです。
一方で、できないこともあります。検索結果からページを消すことは、robots.txtの役目ではありません。巡回を止めても、他サイトからのリンク経由でURLが検索結果に載る場合があるためです。アクセス制限やパスワード保護も、robots.txtの担当外と言えます。
「巡回の制御はできるが、表示の制御や情報保護はできない」。この線引きを最初に押さえておくと、後の失敗を防げます。多くの誤解は、ここの混同から生まれます。
noindexとの違いと使い分け
robots.txtとよく混同されるのが、noindexです。noindexとは、検索結果への表示を拒否するためのタグのこと。両者は似て非なる道具です。
robots.txtは「巡回するな」、noindexは「検索結果に出すな」という指示になります。検索結果から確実に消したいページには、noindexを使うのが正解です。逆に、巡回そのものを減らして検索エンジンの負荷を下げたい場合は、robots.txtが向きます。
注意したいのは、両方を同時に使うと逆効果になる点です。robots.txtで巡回を止めると、クローラーはページ内のnoindexタグを読めません。結果として、消したいページが検索結果に残る場合があります。表示を止めたいなら、巡回は許可してnoindexを使う。この順序こそ肝心です。
robots.txtの基本の書き方|4つの命令と記述ルール
robots.txtの書き方は、4つの命令を覚えれば十分です。User-agent・Disallow・Allow・Sitemapの4つです。文法はシンプルで、1行に1つの指示を書く形になります。それぞれの意味を具体例とあわせて見ていきましょう。
| 命令 | 意味 | 書き方の例 |
|---|---|---|
| User-agent | 対象クローラーを指定 | User-agent: * |
| Disallow | 巡回を拒否する | Disallow: /wp-admin/ |
| Allow | 巡回を許可する | Allow: /wp-admin/admin-ajax.php |
| Sitemap | サイトマップの場所を伝える | Sitemap: https://example.com/sitemap.xml |
User-agent:対象クローラーを指定する
User-agentは、命令の対象となるクローラーを指定する行です。「この指示は誰に向けたものか」を最初に宣言します。robots.txtは、このUser-agentから書き始めるのが決まりです。
すべてのクローラーを対象にする場合は、アスタリスク記号を使い「User-agent: 」と書きます。特定の検索エンジンだけに指示したい場合は、「User-agent: Googlebot」のようにクローラー名を指定します。中小企業のサイトでは、すべて対象の「」で書くケースがほとんどです。
DisallowとAllow:巡回を許可・拒否する
DisallowとAllowは、巡回の可否を伝える命令です。Disallowが「巡回を拒否する」、Allowが「巡回を許可する」を意味します。User-agentの下に続けて書きます。
例えば「Disallow: /wp-admin/」と書けば、管理画面ディレクトリへの巡回を止められます。Disallowの値を空欄にすると、全ページの巡回を許可する意味です。Allowは、拒否したディレクトリの中で一部だけ許可したいときの命令です。スラッシュ1つの違いで対象範囲が変わるため、記述は慎重に確認しましょう。
Sitemap:サイトマップの場所を伝える
Sitemapは、サイトマップの場所を検索エンジンに知らせる行です。サイトマップとは、サイト内のページ一覧をまとめたファイルのこと。クローラーがページを見つけやすくなります。
書き方は「Sitemap: https://example.com/sitemap.xml」のように、完全なURL形式で記述します。この1行を入れておくと、検索エンジンが新しいページを発見しやすくなる利点も生まれます。検索流入の土台づくりとして、ぜひ加えておきたい記述です。コンテンツSEOの全体像はコンテンツSEOとはもあわせてご覧ください。
robots.txtの書き方の具体例|コピペで使える設定パターン
robots.txtの具体的な書き方を、目的別に紹介します。全許可・特定ディレクトリ除外・サイトマップ併記の3パターンです。自社の状況に近いものを参考に、記述を組み立ててみてください。
① 全ページ許可の基本形
User-agent: *
Disallow:
② 管理画面を除外する形
User-agent: *
Disallow: /wp-admin/
Disallow: /?s=
③ サイトマップ併記の実用形
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://example.com/sitemap.xml
すべてのクローラーに全ページを許可する基本形
最もシンプルなのが、全ページを許可する基本形です。特に巡回を制限したいページがない場合は、この形で十分です。
記述は「User-agent: *」の下に「Disallow:」を空欄で置くだけです。Disallowの右側を空にすると、拒否するものは何もない、つまり全許可の状態です。小規模サイトの出発点として、まず押さえておきたい形と言えます。
管理画面や検索結果ページを除外する書き方
次に、巡回不要なページを除外する書き方です。管理画面やサイト内検索の結果ページは、検索エンジンに巡回させる必要がありません。
WordPressなら「Disallow: /wp-admin/」で管理画面を除外できます。サイト内検索の結果ページは「Disallow: /?s=」のように指定します。こうした重複しやすいページや管理用ページを除外すると、評価してほしいページへ巡回を集中させられます。除外しすぎは禁物のため、対象は最小限に絞りましょう。
サイトマップを併記した実用テンプレート
実務でおすすめなのが、サイトマップを併記した実用形です。除外設定とサイトマップ指定を組み合わせた、バランスの良いテンプレートになります。
「User-agent: *」「Disallow: /wp-admin/」「Allow: /wp-admin/admin-ajax.php」「Sitemap: https://example.com/sitemap.xml」の4行が基本構成です。管理画面は除外しつつ、動作に必要なファイルは許可し、サイトマップも伝える構成と言えます。中小企業のWordPressサイトなら、この形を基準に微調整すれば十分実用に足ります。
robots.txtの設置場所と反映方法|アップロードから確認まで
robots.txtは、設置場所を間違えると一切機能しません。ドメイン直下のルートに置くことが大前提です。設置の手順と、正しく反映されたかの確認方法をまとめます。

ドメイン直下(ルート)に設置する理由
robots.txtは、ドメイン直下のルートに置きます。「https://自社ドメイン/robots.txt」でアクセスできる場所が正解です。サブディレクトリの中に置いても、検索エンジンは認識しません。
理由は、検索エンジンがルートのrobots.txtだけを参照する仕様だからです。どんなに正しい記述でも、置き場所が違えば無効です。設置後は、ブラウザでURLを開き、内容が表示されるかを確かめましょう。
WordPressでrobots.txtを編集する方法
WordPressは、初期状態で仮想的なrobots.txtを自動生成しています。実体のファイルがなくても、最低限の内容は出力される仕組みです。
内容を変えたい場合は、SEOプラグインの編集機能を使うのが手軽です。All in One SEOやYoast SEOなどの管理画面から、記述の追加・修正が可能です。より細かく管理したい方は、FTPでサーバーのルートに実体のファイルをアップロードする方法もあります。サイトをいじる前にワードプレスのバックアップを取っておくと、万一のときも安心です。
Search Consoleで記述をテストする手順
編集したら、Google Search Consoleで記述をテストします。robots.txtテスターを使えば、現在検索エンジンが認識している内容と、記述の正誤を確認できます。
手順はシンプルです。Search Consoleのrobots.txtレポートを開き、認識されている内容を確かめるだけです。意図したページが正しく許可・拒否されているかを、ここで点検します。重要な変更を加えたときほど、このテストを欠かさない姿勢が安全につながります。検索の成果測定はSEOの効果測定と改善も参考になります。
robots.txtでよくある失敗と注意点|検索順位を落とさないために
robots.txtは、書き方を誤るとサイト全体が検索から消えるリスクをはらみます。便利な反面、影響範囲が大きいファイルです。中小企業の発信担当者が陥りやすい失敗と、その回避策をまとめます。
失敗1:Disallowの書き間違いで全ページを遮断する
最も怖い失敗が、全ページの遮断です。「Disallow: /」とスラッシュ1つだけ書くと、サイト全体の巡回を拒否する意味になります。たった1文字で、検索流入がゼロになりかねません。
私自身、コントリ株式会社でクライアントのサイトを点検した際、リニューアル時の設定がこの全遮断のまま残っていた例に出会いました。テスト環境の設定を本番へそのまま移してしまう事故です。公開前には、Disallowの値を一つひとつ確認する習慣が欠かせません。
失敗2:robots.txtで隠せると誤解する
2つ目の失敗は、robots.txtで情報を隠せるという誤解です。Disallowは巡回を止めるだけで、ページを非公開にする機能ではありません。
むしろ、robots.txtは誰もが閲覧できるファイルです。「Disallow: /secret/」と書けば、そこに隠したいものがあると公言するようなものです。本当に隠したい情報は、パスワード保護やアクセス制限で守ります。検索結果に出したくないだけなら、noindexを使うのが正しい対処です。
失敗3:CSS・JS を遮断して表示崩れを招く
3つ目の失敗は、CSSやJavaScriptの遮断です。これらのファイルをDisallowで止めると、検索エンジンがページを正しく描画できなくなります。
検索エンジンは、人と同じようにページの見た目を評価しています。デザインを構成するファイルが読めないと、モバイル対応の判定などに悪影響が出ます。「画像やプログラムのフォルダもまとめて除外」といった大雑把な設定は避けましょう。除外は、本当に不要なページだけに絞るのが鉄則です。
中小企業がrobots.txtを安全に運用する手順|最小設定の考え方
中小規模のサイトでは、robots.txtを複雑にする必要はありません。むしろ最小限にとどめる方が、事故を防げます。発信担当者が安全に運用するための考え方を紹介します。
不要なページだけ除外し、複雑な設定は避ける
元の内容を控え、問題が起きてもすぐ戻せるようにする
意図したページが正しく許可・拒否されているか確認する
リニューアルやプラグイン追加での意図しない変化を防ぐ
迷ったら「ほぼ全許可+サイトマップ」が基本
設定に迷ったら、ほぼ全許可にサイトマップを足す形が基本です。管理画面など明らかに不要なページだけを除外し、あとは許可する。シンプルな構成が、結局いちばん安全です。
複雑な除外設定は、事故の温床になりがちです。中小企業のサイト規模なら、巡回量を細かく調整する必要性は高くありません。「触りすぎない」判断が、検索流入を守る近道と言えます。
変更前にバックアップと影響範囲を確認する
robots.txtを変更する前には、欠かさず元の内容を控えておきます。1行の違いが全体に響くファイルだからです。変更前の状態をメモやコピーで残せば、問題が起きてもすぐ戻せます。
加えて、変更が「どのページに影響するか」を事前に確認します。Disallowで指定する範囲に、評価してほしいページが含まれていないか。この一手間が、取り返しのつかない事故を防ぎます。
robots.txtを発信運用の点検項目に組み込む
robots.txtは、一度設定して終わりにしない姿勢が大切です。サイトのリニューアルやプラグイン追加で、内容が意図せず変わる場合があるためです。
おすすめは、月1回のサイト点検にrobots.txtの確認を組み込むことです。「自社ドメイン/robots.txt」を開き、記述に異常がないかを見るだけで構いません。地味な点検ですが、検索流入という資産を守る土台です。日々の発信を成果につなげるための、静かな守りの一手です。
よくある質問(FAQ)
Q1. robots.txtは設置しないといけませんか?
必須ではありません。robots.txtがない場合、検索エンジンはサイト内の全ページを巡回対象とみなします。小規模なサイトで特に巡回を制限したいページがなければ、設置しなくても問題ありません。ただし、サイトマップの場所を伝えたい場合や、管理画面など巡回不要なページを除外したい場合は、設置する価値があります。迷う場合は「ほぼ全許可+サイトマップ記述」のシンプルな形で置いておくと安心です。
Q2. robots.txtでDisallowすればページを検索結果から隠せますか?
隠せません。これはよくある誤解です。Disallowはクローラーの「巡回」を止める命令であり、検索結果への「表示」を止める命令ではありません。他サイトからリンクされていれば、巡回されなくてもURLだけが検索結果に出る場合があります。検索結果に出したくないページは、robots.txtではなくnoindexタグを使います。機密ページは、そもそもパスワード保護やアクセス制限で守るのが正しい対処です。
Q3. robots.txtはどこに置けばいいですか?
ドメインの直下(ルート)に置くのが鉄則です。例えば「https://example.com/robots.txt」というURLでアクセスできる場所です。サブディレクトリやページの中に置いても、検索エンジンは認識しません。WordPressの場合は、SEOプラグインの機能やFTPでルートにアップロードする方法で設置できます。設置後は「自社ドメイン/robots.txt」へブラウザでアクセスし、内容が表示されるか確認しましょう。
Q4. robots.txtを編集したらすぐ反映されますか?
検索エンジンが次にファイルを読み込んだタイミングで反映されます。robots.txtは頻繁にチェックされますが、反映までに時間差が生じる場合があります。すぐに反映を確認したいときは、Google Search Consoleのrobots.txtテスターを使うと、現在認識されている内容と記述の正誤を確認できます。重要な変更を加えたときは、テスターでの確認を習慣にすると安全です。
Q5. WordPressのrobots.txtはどう編集しますか?
WordPressは初期状態で仮想的なrobots.txtを自動生成しています。内容を変更したい場合は、SEOプラグイン(All in One SEOやYoast SEOなど)の編集機能を使うのが手軽です。プラグインの管理画面から記述を追加・修正できます。より細かく管理したい場合は、FTPでサーバーのルートに実体のrobots.txtファイルをアップロードする方法もあります。編集後は、ブラウザとSearch Consoleで反映を欠かさず確認してください。
まとめ|robots.txtは「触りすぎない」が中小企業の正解
robots.txtの書き方は、User-agent・Disallow・Allow・Sitemapの4命令で成り立ちます。クローラーに巡回範囲を伝え、不要なページの巡回を抑えるテキストファイルです。中小企業のサイトなら「ほぼ全許可+サイトマップ」の最小構成で、まず十分に機能します。
ただし、影響範囲の大きさには注意が必要です。「Disallow: /」の1行で全ページが検索から消える危うさがあります。robots.txtで情報は隠せないこと、CSSやJSは遮断しないこと。この2点を押さえれば、大きな事故は避けられます。変更前のバックアップとSearch Consoleでのテストも欠かせません。
ハッシンラボが大切にしているのは「発信の土台を整え、成果を資産にする」という考え方です。robots.txtは派手な施策ではありませんが、検索流入という資産を守る基礎工事に当たります。月1回の点検項目に加え、静かに守り続ける。その積み重ねが、半年後・1年後の検索流入を支える土台になります。