1. 結論:Netlifyでのrobots.txtの配置ミスが原因!正しい場所に置けば即解決

ChatGPTやAIコーディングアシスタント「Antigravity」などを使い、作成したWebサイトをNetlifyで無料公開できたものの、Google Search Consoleの登録時やSEOツールを実行した際に「robots.txtが見つかりません(404エラー)」と表示されて驚く初心者はとても多いです。

結論から言うと、これはNetlify側の問題ではなく、作成した `robots.txt` ファイルの配置場所(ファイルの階層)の指定ミスが原因です。

特にNetlifyのドラッグ&ドロップによる簡易公開を利用している場合、フォルダのアップロードの仕方一つでファイルが正しく認識されなくなってしまいます。本記事では、初心者が陥りがちな原因を紐解き、一瞬で解決する正しい配置方法と記述例を分かりやすく解説します。

2. そもそもrobots.txtとは?なぜ必要なのか

2.1. 検索エンジン(Googlebot)にサイトを正しく伝える役割

`robots.txt` とは、Googleなどの検索エンジンの巡回ロボット(クローラー)に対して、「サイト内のどのページを読み込んでよくて、どのページを無視すべきか」という案内(制御指示)を出すためのプレーンテキストファイルです。

例えば、検索結果に載せる必要がないテスト公開ページや、管理者用の一時フォルダなどをクローラーが余計に読み込んでしまうのを防ぐ役割があります。さらに、検索エンジンに対して「サイトマップはここにありますよ」と伝える(sitemap.xmlの場所を記述する)ためにも使われます。

2.2. 404エラーになっていても即座に致命的なペナルティにはならない

「robots.txtが404エラー(存在しない状態)だと、SEO評価が落ちてGoogle検索から除外されてしまうのでは?」と不安になるかもしれません。

安心してください。robots.txtが存在しなくても、検索順位が即座に下がったりペナルティを受けたりすることは決してありません。 Googleなどの検索クローラーは、robots.txtが見つからない場合「このサイトには特に巡回制限ルールはない」と判断し、すべての公開ページを通常通り巡回しインデックスしようとします。

ただし、不要なページへのクローラー流入を防いだり、サイトマップの場所をクローラーにスマートに伝えるためにも、早い段階で正しい位置に設定しておくことが「SEO上の安心」へと繋がります。

3. Netlifyでrobots.txtが404エラーになる主な原因

3.1. 原因1:ドラッグ&ドロップするフォルダの「外」に置いている

Netlifyの無料プランで最も多く使われる公開方法は、サイトのフォルダをブラウザにドラッグ&ドロップする手法です。

このとき、`robots.txt` ファイルがアップロードするフォルダの外側に存在していると、Netlify側にはアップロードされません。PC上に作成したプロジェクトフォルダの内部にしっかりと含まれているか確認する必要があります。

3.2. 原因2:サブフォルダ(cssやassets)に間違えて入れている

「画像ファイルはassetsフォルダにまとめるから、robots.txtも何かのフォルダに…」と、誤って別のサブフォルダの中に入れてしまうケースです。

クローラーは必ずサイトのトップページと同じ一番上の階層である `https://your-domain.com/robots.txt` という絶対パスを探しに来ます。そのため、サブフォルダの中(例: `/assets/robots.txt`)に入っていると、クローラーはファイルを見つけられず404エラーを返します。

4. Netlifyでrobots.txtを正しく設置する手順

ビルド設定を行わない「静的HTMLサイト」をNetlifyで公開している場合の、具体的な正しい設定手順を解説します。

4.1. Step 1: robots.txtファイルを作成する

メモ帳やVS Codeなどのテキストエディタを使って、新しく `robots.txt` というファイルを作成します。拡張子が `.txt` になっているか確認し、余計な日本語の文字や全角スペースが入らないように注意してください。

4.2. Step 2: 公開するフォルダの「ルート直下」に配置する

これが一番重要なポイントです。`robots.txt` を、必ず `index.html`(トップページ)と全く同じ階層(ルートディレクトリ直下)に配置してください。

正しい配置図は以下の通りです:

[公開するプロジェクトフォルダ] (※Netlifyにドロップするフォルダ)
├── index.html (トップページ)
├── articles.html
├── robots.txt (★ここに配置!)
├── sitemap.xml (★同じくここ!)
├── css/
│ └── style.css
└── articles/
└── publish-ai-website-netlify.html

4.3. Step 3: Netlifyに再度ドラッグ&ドロップしてデプロイする

ファイルを正しい位置に配置したら、プロジェクトフォルダをもう一度Netlifyのデプロイ画面にドラッグ&ドロップし、最新の構成にアップデート(更新)させます。

デプロイ完了後、数秒〜数十秒でネット上に最新のファイル構成が反映されます。

5. robots.txtの書き方とsitemap.xmlの記述例

AIサイト初心者に最もおすすめな、最も標準的で無難な `robots.txt` の書き方をご紹介します。以下のコードをコピーして `robots.txt` 内に貼り付け、サイトマップのURLをご自身のURLに書き換えてください。

User-agent: *
Allow: /

Sitemap: https://ai-website-lab.netlify.app/sitemap.xml

コードの意味:

  • User-agent: *:すべての検索エンジンロボットに対してルールを適用します。
  • Allow: /:サイト全体のクロール(読み込み)を許可します。
  • Sitemap: [URL]:検索ロボットに対して、サイトマップが置いてある絶対URLを明示して巡回を効率化させます。

6. 修正完了後にブラウザで確認すべきこと

再デプロイが完了したら、実際にブラウザを使って `robots.txt` が正しく認識されているかテストしましょう。

確認は非常に簡単です。ご自身の公開URLの末尾に `/robots.txt` をつけて、アドレスバーに入力してエンターを押してください。

例:`https://あなたのサイト.netlify.app/robots.txt`

ブラウザの画面に先ほど記述した `User-agent: *` や `Sitemap:` の文字がそのままテキストとして表示されれば、配置および反映は完璧に成功しています。

もし再び「404 Not Found」などのエラー画面が出る場合は、デプロイしたフォルダが間違っているか、Netlifyのキャッシュが残っている可能性があります。少し時間をおいてリロードするか、フォルダ階層を再確認しましょう。

7. まとめ:正しい配置でGoogleにサイトをクロールしてもらおう

`robots.txt` は、検索エンジンのクローラーをスマートに導くための大切な標識です。Netlifyにアップロードするフォルダの「一番外側の階層」にそっと添えておくだけで、404エラーは完全に解決します。

無事に404エラーが解消されたら、次はGoogle Search Consoleにログインし、サイトマップ(`sitemap.xml`)の送信テストを行うのが次のステップになります。エラーが解消された安心感を胸に、AIサイトをより多くの読者へ届ける準備を進めましょう!