ステージングサイト、社内ドキュメントポータル、または制作途中のドキュメントビルドを運用している場合、検索エンジンにそれらのページをインデックスされたり、クロールされたりすることは望ましくありません。zudo-docの`noindex`設定は、すべてのクローラーをブロックするための単一のスイッチを提供します。

## この設定が行うこと

`zfb.config.ts`で`noindex: true`を設定すると、ビルド時に2つの補完的な動作が有効になります。

1. **robots メタタグ** — すべてのレンダリングされたページに以下が追加されます：
   ```html
   <meta name="robots" content="noindex, nofollow">
   ```

   これにより、ページを（リンク経由などで）発見したクローラーに対して、インデックスしないよう、また外部リンクを辿らないよう指示します。

2. **`robots.txt` の disallow** — サイトルートに生成される`robots.txt`には以下が含まれます：
   ```
   User-agent: *
   Disallow: /
   ```

   これにより、クローラーはサイト配下のすべてのパスをクロールしないよう指示されます。`noindex`が有効な場合、`robots.txt`から`Sitemap:`の行は意図的に省略されます — すべてのクロールを禁止しながらサイトマップを通知することは矛盾するためです。

## 設定を有効にする方法

### プリセットジェネレーター経由（新規プロジェクトへの推奨）

`create-zudo-doc`で新しいプロジェクトをスキャフォールドする際、インタラクティブな[セットアッププリセットジェネレーター](https://zudo-doc.takazudomodular.com/ja/docs/getting-started/setup-preset-generator)で **"Avoid robots indexing"** チェックボックスを選択してください。これにより、生成された`zfb.config.ts`に`noindex: true`が出力されます。

### CLIフラグ経由

`create-zudo-doc`のCLIに`--noindex`を渡します：

```sh
npx create-zudo-doc@latest --noindex
```

### zfb.config.ts を直接編集

`zfb.config.ts`を開いて以下を設定します：

```ts title="zfb.config.ts"
export default defineConfig(
  zudoDoc({
    // ...
    noindex: true,
  }),
);
```

デフォルトは`false`で、クローラーは許可されます。

## 注意事項

[Dynamic content unavailable in text export]

`noindex`を有効にしても、今後のインデックス化は防げますが、すでに検索エンジンにインデックスされているページが遡及的に削除されることは**ありません**。それらを削除するには、各検索エンジンのツール（例：Google Search ConsoleのURL削除ツール）に削除リクエストを送信する必要があります。



[Dynamic content unavailable in text export]

`robots.txt Disallow: /`は*クロール指示*です — クローラーにページを取得しないよう伝えます。`noindex`メタタグは*インデックス指示*です — ページを取得したクローラーに、検索インデックスに追加しないよう伝えます。

これら2つの指示は補完的な関係にあります。`Disallow`はクロールバジェットへの露出を減らし、`noindex`はすでに直接リンク経由で取得済みのページに対処します。両方を組み合わせることは、「すべてをブロックする」トグルの標準的なアプローチです。

微妙な点として：`robots.txt`を遵守するクローラーはページを取得しないため、そのページ内の`noindex`メタタグを見ることもありません。実用上これは問題ありません — `Disallow: /`に従うクローラーはいずれにせよページをインデックスしません。`robots.txt`を無視するクローラーに対しては、メタタグが安全網として機能します。



[Dynamic content unavailable in text export]

`noindex: true`の場合、zudo-docは意図的に`robots.txt`から`Sitemap:`エントリを省略します。すべてのクロールをブロックしながらサイトマップをクローラーに通知することは矛盾したシグナルを送ることになります。インデックス化を再び有効にした場合、`Sitemap:`行は自動的に復元されます。



## 関連情報

- [設定リファレンス — `noindex`](https://zudo-doc.takazudomodular.com/ja/docs/guides/configuration#%E3%82%A2%E3%82%A4%E3%83%87%E3%83%B3%E3%83%86%E3%82%A3%E3%83%86%E3%82%A3%E3%81%A8-url-noindex) — 完全な設定リファレンス