# AEO 2026 完整實踐指南

> 由 CiphLens 團隊整理 · 來源：GitHub Copilot 研究 · 繁體中文

---

● Web Search (MCP: github-mcp-server) · Answer Engine Optimization AEO best practices 2025 2026 llm…
  └ {"type":"output_text","text":{"value":"Certainly! Here’s a concise guide...

● Web Search (MCP: github-mcp-server) · llms.txt specification standard 2025 AI bots schema.org str…
  └ {"type":"output_text","text":{"value":"**llms.txt Specification Standard...

● Explore CiphLens project structure (shell)
  │ find /Users/eugene/Dropbox/abr-26/ciphlens-com/src -type f | head -30 && cat
  │ /Users/eugene/Dropbox/abr-26/ciphlens-com/src/pages/index.astro 2>/dev/null
  │ | head -40
  └ 71 lines...

● Web Search (MCP: github-mcp-server) · Content-Security-Policy TTFB Core Web Vitals AEO 2025 serve…
  └ {"type":"output_text","text":{"value":"You're touching on an advanced in...

● Read robots-txt.ts
  │ src/lib/audit/checks/robots-txt.ts
  └ 106 lines read

● Read llms-txt.ts
  │ src/lib/audit/checks/llms-txt.ts
  └ 51 lines read

● Read content-ratio.ts
  │ src/lib/audit/checks/content-ratio.ts
  └ 57 lines read

● Read schema-org.ts
  │ src/lib/audit/checks/schema-org.ts
  └ 56 lines read

● Read security-headers.ts
  │ src/lib/audit/checks/security-headers.ts
  └ 57 lines read

● Read og-twitter.ts
  │ src/lib/audit/checks/og-twitter.ts
  └ 59 lines read

● Read semantic-html.ts
  │ src/lib/audit/checks/semantic-html.ts
  └ 67 lines read

● Read ssr-csr.ts
  │ src/lib/audit/checks/ssr-csr.ts
  └ 60 lines read

● Read core-web-vitals.ts
  │ src/lib/audit/checks/core-web-vitals.ts
  └ 67 lines read

現在我有了完整的背景資料，包括 CiphLens 的實際評分邏輯。讓我撰寫這份完整指南：

---

# Answer Engine Optimization（AEO）2026 完整最佳實踐指南

## 一、什麼是 AEO？定義與起源

**Answer Engine Optimization（答案引擎最佳化，AEO）** 是一套針對 AI 驅動的問答系統（如 ChatGPT、Perplexity、Claude、Google AI Overview、Bing Copilot）調整網站內容與技術結構的方法論，目標是讓你的內容被這些系統正確擷取、理解、引用，並作為直接答案呈現給使用者。

### 起源脈絡

AEO 的概念最早可追溯至 2018 年前後 Google 推動「精選摘要（Featured Snippets）」的時代，但真正系統化是在 2023 年生成式 AI 搜尋引擎大量普及後。關鍵時間軸如下：

- **2018**：Google 推出 BERT，語意搜尋崛起
- **2022–2023**：ChatGPT 出現，Bing Chat 整合 GPT-4，Google SGE（Search Generative Experience）實驗推出
- **2024**：Jeremy Howard 提出 `llms.txt` 草案規範；OpenAI、Anthropic、Perplexity 等公開 AI 爬蟲 User-Agent
- **2025–2026**：AEO 成為主流 SEO 工具套件的標配；Google AI Overviews 在全球 100+ 市場推出；[llmstxt.org](https://llmstxt.org) 成為事實標準

### 學術與研究基礎

- Metzler et al. (2021)，《Rethinking Search: Making Domain Experts out of Dilettante》（arXiv:2105.02274）提出未來搜尋引擎從排名轉向生成式回答的範式轉移。
- Ziems et al. (2023)，《Can Large Language Models Transform Computational Social Science?》探討 LLM 對資訊消費行為的影響。

---

## 二、AEO 與傳統 SEO 的核心差異

| 維度 | 傳統 SEO | AEO（2026） |
|------|----------|-------------|
| **目標受眾** | 搜尋引擎演算法（排名） | AI 模型推論引擎（引用） |
| **成功指標** | 關鍵字排名、點擊率（CTR） | 引用率（Citation Rate）、AI 摘要出現率 |
| **內容格式** | 長尾關鍵字堆疊、反向連結 | 直接問答結構、語意密度、結構化資料 |
| **技術重點** | PageRank、meta keywords | Schema.org JSON-LD、`llms.txt`、語意 HTML |
| **爬蟲管理** | Googlebot 為主 | GPTBot、ClaudeBot、PerplexityBot、Google-Extended |
| **渲染需求** | JS 渲染逐漸被接受 | **嚴格要求 SSR**，CSR 頁面對 AI 爬蟲幾乎不可見 |
| **安全信任** | HTTPS 為基本門檻 | 完整安全標頭 = 可信來源信號 |

傳統 SEO 以「被找到」為目標，而 AEO 的目標是「被引用」——你的內容不只要出現在搜尋結果頁，而要成為 AI 系統對話中的事實來源。

---

## 三、9 大可量測指標與實作 Code Snippets

### 指標 1：robots.txt 對 AI Bot 的政策（權重 15 分）

**定義**：明確宣告允許或封鎖哪些 AI 爬蟲存取你的網站。

**為何重要**：截至 2026 年，主要 AI 系統已公開以下爬蟲 User-Agent：

| Bot 名稱 | 所屬平台 | 文件來源 |
|----------|----------|----------|
| `GPTBot` | OpenAI / ChatGPT | platform.openai.com/docs/gptbot |
| `ClaudeBot` | Anthropic / Claude | anthropic.com/docs |
| `PerplexityBot` | Perplexity AI | docs.perplexity.ai |
| `Google-Extended` | Google AI Overview | developers.google.com |
| `OAI-SearchBot` | OpenAI SearchGPT | platform.openai.com |
| `Meta-ExternalAgent` | Meta AI | meta.com |

**評分邏輯**（來自 CiphLens `robots-txt.ts`）：
- 全部允許 → ✅ 滿分（15）
- 部分封鎖 → ⚠️ 警告（8）
- 全部封鎖 → ❌ 零分（0）

**最佳實作**：

```txt
# /robots.txt — AEO 友好配置（2026）

# 傳統搜尋引擎
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

# AI 引用爬蟲 — 建議全部開放以最大化 AI 引用機會
User-agent: GPTBot
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: OAI-SearchBot
Allow: /

# 若有不希望被 AI 訓練的內容（如付費牆）
User-agent: GPTBot
Disallow: /members/
Disallow: /private/

# 全域設定
User-agent: *
Allow: /
Sitemap: https://example.com/sitemap.xml
```

> ⚠️ **注意**：封鎖 AI 爬蟲不等於保護版權，建議透過授權協議管理，而非直接封鎖引用機會。

---

### 指標 2：llms.txt（權重 15 分）

**定義**：放置於網站根目錄的 Markdown 純文字檔，為 LLM 提供結構化的網站導覽與關鍵頁面索引。由 Jeremy Howard（fast.ai 創辦人）於 2024 年提出，規範詳見 [llmstxt.org](https://llmstxt.org)。

**評分邏輯**（來自 CiphLens `llms-txt.ts`）：
- 存在且包含 `# 標題` 與連結清單 → ✅ 滿分（15）
- 存在但格式不完整 → ⚠️ 警告（8）
- 不存在 → ❌ 零分（0）

**標準格式**：

```markdown
# CiphLens

> CiphLens 是一個 AEO/GEO 評分平台，協助企業量測其網站對 AI 搜尋引擎的可見性與可被引用程度。

適用於需要提升 AI 時代搜尋曝光率的行銷團隊與 SEO 專家。

## 核心功能
- [AEO 稽核工具](https://ciphlens.com/audit): 輸入任意 URL，即時取得 9 大指標評分報告
- [AI Bot 監控](https://ciphlens.com/crawlers): 即時追蹤 GPTBot、ClaudeBot 等 AI 爬蟲的造訪紀錄
- [llms.txt 產生器](https://ciphlens.com/tools/llms-txt): 一鍵生成符合規範的 llms.txt 檔案

## 文件
- [API 說明文件](https://ciphlens.com/docs/api): REST API 完整參考，包含認證與速率限制
- [評分演算法說明](https://ciphlens.com/docs/scoring): 各指標權重與判斷邏輯

## 關於
- [關於我們](https://ciphlens.com/about): 產品願景、團隊資訊
- [部落格](https://ciphlens.com/blog): AEO 最新研究與案例分析

## 機器可讀資料
- [Organization Schema](https://ciphlens.com/schema/org.json)
- [sitemap.xml](https://ciphlens.com/sitemap.xml)
```

> 💡 也可提供 `/llms-full.txt`，包含完整頁面內容摘要，供需要深度索引的 LLM 使用。

---

### 指標 3：Schema.org 結構化資料（權重 15 分）

**定義**：透過 `application/ld+json` 注入 JSON-LD 標記，讓 AI 系統以結構化方式理解頁面語意。

**高價值 Schema 類型**（來自 CiphLens `schema-org.ts`）：
`Organization`、`WebSite`、`Product`、`Article`、`FAQPage`、`HowTo`

**實作範例**：

```html
<!-- 首頁 — Organization + WebSite -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://example.com/#organization",
      "name": "Example Corp",
      "url": "https://example.com",
      "logo": {
        "@type": "ImageObject",
        "url": "https://example.com/logo.png"
      },
      "sameAs": [
        "https://twitter.com/example",
        "https://linkedin.com/company/example"
      ]
    },
    {
      "@type": "WebSite",
      "@id": "https://example.com/#website",
      "url": "https://example.com",
      "name": "Example Corp",
      "publisher": { "@id": "https://example.com/#organization" }
    }
  ]
}
</script>
```

```html
<!-- 文章頁 — Article -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "AEO 2026 完整指南",
  "author": {
    "@type": "Person",
    "name": "作者名稱",
    "url": "https://example.com/author/xxx"
  },
  "datePublished": "2026-01-15",
  "dateModified": "2026-04-01",
  "publisher": { "@id": "https://example.com/#organization" },
  "mainEntityOfPage": "https://example.com/blog/aeo-2026"
}
</script>
```

```html
<!-- FAQ 頁 — FAQPage（對 AI 摘要極有效） -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "什麼是 AEO？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Answer Engine Optimization 是針對 AI 問答系統優化內容可引用性的技術。"
      }
    }
  ]
}
</script>
```

開源驗證工具：[google/schemarama](https://github.com/google/schemarama)（GitHub 開源 Schema 驗證庫）

---

### 指標 4：語意 HTML（Semantic HTML）（權重 12 分）

**定義**：使用 HTML5 語意標籤正確標記頁面結構，使 AI 爬蟲能理解內容層次。

**評分邏輯**（來自 CiphLens `semantic-html.ts`）：
需滿足 6 個信號中的 5 個以上才達滿分：
1. 唯一一個 `<h1>`
2. 存在 `<main>`
3. 存在 `<nav>`
4. 存在 `<article>` 或 `<h2>`
5. 存在 `<header>`
6. 存在 `<footer>`

**最佳實作模板**：

```html
<!doctype html>
<html lang="zh-TW">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>頁面標題 | 網站名稱</title>
  <meta name="description" content="150 字以內的精準描述，便於 AI 直接引用">
</head>
<body>
  <header>
    <nav aria-label="主要導覽">
      <a href="/">首頁</a>
      <a href="/about">關於</a>
    </nav>
  </header>

  <main>
    <article>
      <h1>核心主題標題（全頁唯一）</h1>
      <p>開門見山的直接答案段落，AI 最可能從此處擷取摘要。</p>

      <section>
        <h2>子主題一</h2>
        <p>詳細說明...</p>
      </section>

      <section>
        <h2>子主題二</h2>
        <ul>
          <li>條列式清單便於 AI 解析</li>
          <li>每項簡潔且自包含</li>
        </ul>
      </section>
    </article>

    <aside aria-label="相關資源">
      <!-- 側欄不影響主內容語意 -->
    </aside>
  </main>

  <footer>
    <p>© 2026 Example Corp</p>
  </footer>
</body>
</html>
```

---

### 指標 5：SSR vs CSR（伺服器端渲染偵測）（權重 10 分）

**定義**：AI 爬蟲大多數不執行 JavaScript，若頁面採純 CSR（Client-Side Rendering），爬蟲看到的是空殼 HTML，內容完全不可見。

**評分邏輯**（來自 CiphLens `ssr-csr.ts`）：
- 初始 HTML 字數 > 50 且非 SPA 空殼 → ✅ SSR（10）
- SPA 特徵（`id="root"` 且字數 < 30）→ ❌ CSR 失敗（0）

**Next.js App Router 的 SSR 配置**：

```tsx
// app/page.tsx — 預設就是 SSR，勿加 'use client'
export default async function HomePage() {
  const data = await fetch('https://api.example.com/data', {
    next: { revalidate: 3600 } // ISR：每小時更新
  });
  const content = await data.json();

  return (
    <main>
      <h1>{content.title}</h1>
      <p>{content.description}</p>
    </main>
  );
}
```

```tsx
// Astro — 最適合 AEO 的框架，預設靜態 SSR
---
// src/pages/blog/[slug].astro
const { slug } = Astro.params;
const post = await getPost(slug);
---
<article>
  <h1>{post.title}</h1>
  <div set:html={post.content} />
</article>
```

**偵測方式**（用於驗證你的頁面）：

```bash
# 模擬 AI 爬蟲抓取（不執行 JS）
curl -A "GPTBot/1.0" https://example.com | grep -o '<h1>.*</h1>'
# 若有輸出 → SSR ✅；無輸出 → CSR ❌
```

---

### 指標 6：TTFB（Time to First Byte）（整合至 Core Web Vitals，權重 10 分）

**定義**：從瀏覽器送出請求到收到第一個位元組的時間。Google 建議 TTFB < 800ms；AI 爬蟲通常有更短的超時閾值（約 5–10 秒）。

**評分邏輯**（來自 CiphLens `core-web-vitals.ts`）分析 HTML 中的 5 個 CWV 信號：
1. `viewport` meta 標籤存在
2. 所有 `<img>` 均有 `width`/`height` 屬性
3. 存在 `<link rel="preconnect">` 或 `<link rel="preload">`
4. 無阻塞渲染的同步 `<script src>`
5. 圖片使用 `loading="lazy"`

**最佳實作**：

```html
<head>
  <!-- 預連接關鍵第三方資源 -->
  <link rel="preconnect" href="https://fonts.googleapis.com">
  <link rel="preconnect" href="https://cdn.example.com" crossorigin>

  <!-- 預載入 LCP 元素 -->
  <link rel="preload" as="image" href="/hero.webp" fetchpriority="high">

  <!-- 非阻塞腳本 -->
  <script src="/analytics.js" defer></script>
  <script src="/ui-utils.js" async></script>
</head>

<body>
  <!-- LCP 圖片不用 lazy -->
  <img src="/hero.webp" width="1200" height="630" alt="首頁主視覺" fetchpriority="high">

  <!-- 非關鍵圖片使用 lazy -->
  <img src="/feature.webp" width="600" height="400" alt="功能說明" loading="lazy">
</body>
```

**Cloudflare Workers 邊緣快取降低 TTFB**：

```typescript
// wrangler.toml 設定 Cache Rules 讓 TTFB < 200ms
export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const cache = caches.default;
    const cacheKey = new Request(request.url);
    let response = await cache.match(cacheKey);

    if (!response) {
      response = await fetch(request);
      // 快取靜態頁面 1 小時
      const headers = new Headers(response.headers);
      headers.set('Cache-Control', 'public, max-age=3600, s-maxage=3600');
      response = new Response(response.body, { ...response, headers });
      await cache.put(cacheKey, response.clone());
    }
    return response;
  }
};
```

---

### 指標 7：Content Density（內容密度）（權重 10 分）

**定義**：頁面有效文字內容佔 HTML 總長度的比例。AI 系統偏好內容密度高的頁面，而非大量 JS/CSS 噪音包裹少量文字。

**評分邏輯**（來自 CiphLens `content-ratio.ts`）：
- 文字比例 ≥ 25% **且**字數 ≥ 300 → ✅ 優秀（10）
- 比例 ≥ 10% **或**字數 ≥ 100 → ⚠️ 普通（5）
- 低於上述 → ❌ 不及格（0）

**診斷腳本**：

```javascript
// 在瀏覽器 Console 執行，快速評估當前頁面 Content Density
(function() {
  const clone = document.body.cloneNode(true);
  clone.querySelectorAll('script, style, noscript, iframe, svg').forEach(el => el.remove());
  const text = clone.innerText.replace(/\s+/g, ' ').trim();
  const words = text.split(' ').filter(w => w.length > 2).length;
  const ratio = text.length / document.documentElement.outerHTML.length;
  console.log(`Content Density: ${(ratio * 100).toFixed(1)}%`);
  console.log(`Word Count: ${words}`);
  console.log(ratio >= 0.25 && words >= 300 ? '✅ Pass' : words >= 100 ? '⚠️ Warn' : '❌ Fail');
})();
```

**提升 Content Density 的策略**：
- 將大型 JS bundle 移至 CDN 或 dynamic import
- CSS 採用 CSS-in-JS 的 critical CSS 提取，避免全量嵌入
- 使用 Astro 的島嶼架構（Islands Architecture），最小化傳送至客戶端的 JS

---

### 指標 8：OG / Twitter Meta Tags（社交媒體元標籤）（權重 8 分）

**定義**：Open Graph 與 Twitter Card 標籤，除控制社交分享預覽外，也被 AI 系統用於快速理解頁面摘要。

**評分邏輯**（來自 CiphLens `og-twitter.ts`）：
- OG 三件套（title + description + image）+ Twitter Card → ✅ 滿分（8）
- 部分存在 → ⚠️ 警告（4）
- 全部缺失 → ❌ 零分（0）

**完整模板**：

```html
<head>
  <!-- 基礎 Meta -->
  <title>AEO 完整指南 2026 | CiphLens</title>
  <meta name="description" content="涵蓋 9 大可量測指標的 AEO 最佳實踐，包含 robots.txt AI bot 政策、llms.txt、Schema.org 實作範例。">

  <!-- Open Graph（Facebook、LINE、Discord、AI 摘要） -->
  <meta property="og:type" content="article">
  <meta property="og:title" content="AEO 完整指南 2026">
  <meta property="og:description" content="涵蓋 9 大可量測指標的 AEO 最佳實踐，包含 robots.txt AI bot 政策、llms.txt、Schema.org 實作範例。">
  <meta property="og:image" content="https://example.com/og/aeo-guide-2026.png">
  <meta property="og:image:width" content="1200">
  <meta property="og:image:height" content="630">
  <meta property="og:url" content="https://example.com/blog/aeo-guide-2026">
  <meta property="og:locale" content="zh_TW">
  <meta property="og:site_name" content="CiphLens">

  <!-- Twitter / X Card -->
  <meta name="twitter:card" content="summary_large_image">
  <meta name="twitter:site" content="@ciphlens">
  <meta name="twitter:title" content="AEO 完整指南 2026">
  <meta name="twitter:description" content="涵蓋 9 大可量測指標的 AEO 最佳實踐。">
  <meta name="twitter:image" content="https://example.com/og/aeo-guide-2026.png">
</head>
```

---

### 指標 9：安全標頭（Security Headers）（權重 5 分）

**定義**：HTTP 回應標頭中的安全宣告。AI 引用系統（尤其是 Perplexity、ChatGPT Plugins）在決定是否引用某來源時，會將網站安全性納入可信度評估。

**評分邏輯**（來自 CiphLens `security-headers.ts`）：
需滿足 5 個標頭中的 4 個以上：
1. `Strict-Transport-Security`（HSTS）
2. `Content-Security-Policy`（CSP）
3. `X-Frame-Options`
4. `X-Content-Type-Options`
5. `Referrer-Policy`

**Next.js `next.config.ts` 完整配置**：

```typescript
// next.config.ts
import type { NextConfig } from 'next';

const securityHeaders = [
  {
    key: 'Strict-Transport-Security',
    value: 'max-age=63072000; includeSubDomains; preload'
  },
  {
    key: 'Content-Security-Policy',
    value: [
      "default-src 'self'",
      "script-src 'self' 'unsafe-inline' https://cdn.example.com",
      "style-src 'self' 'unsafe-inline' https://fonts.googleapis.com",
      "img-src 'self' data: https:",
      "font-src 'self' https://fonts.gstatic.com",
      "connect-src 'self' https://api.example.com",
      "frame-ancestors 'none'"
    ].join('; ')
  },
  {
    key: 'X-Frame-Options',
    value: 'DENY'
  },
  {
    key: 'X-Content-Type-Options',
    value: 'nosniff'
  },
  {
    key: 'Referrer-Policy',
    value: 'strict-origin-when-cross-origin'
  },
  {
    key: 'Permissions-Policy',
    value: 'camera=(), microphone=(), geolocation=()'
  }
];

const nextConfig: NextConfig = {
  async headers() {
    return [
      {
        source: '/(.*)',
        headers: securityHeaders
      }
    ];
  }
};

export default nextConfig;
```

**Astro / Cloudflare Workers 等效配置**（`wrangler.json`）：

```json
{
  "name": "my-site",
  "compatibility_date": "2026-01-01",
  "rules": [
    {
      "description": "Security Headers for AEO",
      "expression": "true",
      "action": "rewrite",
      "action_parameters": {
        "headers": {
          "Strict-Transport-Security": {
            "operation": "set",
            "value": "max-age=63072000; includeSubDomains; preload"
          },
          "X-Content-Type-Options": {
            "operation": "set",
            "value": "nosniff"
          },
          "Referrer-Policy": {
            "operation": "set",
            "value": "strict-origin-when-cross-origin"
          }
        }
      }
    }
  ]
}
```

---

## 四、衡量工具

### CiphLens（本地整合方案）

[CiphLens](https://ciphlens.com) 是一個專為 AEO/GEO 時代設計的稽核平台，整合以上全部 9 個指標，提供：
- **即時稽核**：輸入任意 URL，數秒內取得完整評分報告（滿分 100 分）
- **AI Bot 監控**：即時追蹤 GPTBot、ClaudeBot、PerplexityBot 等爬蟲造訪你的網站
- **地理分佈探針**：模擬 AI 爬蟲從不同地區抓取頁面的結果差異
- **PDF 報告匯出**：可直接提供給客戶或管理層的評分報告

CiphLens 的評分權重分布（共 100 分）：

| 指標 | 最高分 |
|------|--------|
| robots.txt AI Bot Access | 15 |
| llms.txt Presence | 15 |
| Schema.org Structured Data | 15 |
| Semantic HTML Structure | 12 |
| SSR vs CSR Detection | 10 |
| Core Web Vitals Signals | 10 |
| Content-to-Noise Ratio | 10 |
| OG & Twitter Meta Tags | 8 |
| Security Headers | 5 |

### 其他業界工具

| 工具 | 用途 | 連結 |
|------|------|------|
| **Google Search Console** | Core Web Vitals 真實用戶數據（CrUX） | search.google.com |
| **PageSpeed Insights** | Lighthouse + CrUX 整合，TTFB 細分 | pagespeed.web.dev |
| **WebPageTest** | 詳細的 TTFB 瀑布圖，支援多節點 | webpagetest.org |
| **Rich Results Test** | 驗證 Schema.org JSON-LD | search.google.com/test/rich-results |
| **SecurityHeaders.com** | 掃描回應標頭，提供安全等級評分 | securityheaders.com |
| **Screaming Frog SEO Spider** | 批次爬取網站，偵測語意 HTML 缺失 | screamingfrog.co.uk |
| **llmstxt.org validator** | 線上驗證 llms.txt 格式合規性 | llmstxt.org |

### 開源工具與 GitHub 專案

- **[google/schemarama](https://github.com/google/schemarama)**：Schema.org 標記驗證工具
- **[nicholasgasior/gsfv](https://github.com/nicholasgasior/gsfv)**：Schema 結構驗證
- **[nicktacular/php-structured-data](https://github.com/nicktacular/php-structured-data)**：PHP Schema 生成工具
- **[ai-robots-txt/ai-robots-txt](https://github.com/ai-robots-txt/ai-robots-txt)**：社群維護的 AI Bot User-Agent 最新清單（GitHub 開源）
- **[teles/array-mixer](https://github.com/teles/array-mixer)**（非直接相關，但展示了 llms.txt 風格文件的自動化生成）

---

## 五、AEO 2026 稽核檢驗清單

以下是可直接用於 PR 審查或發布前確認的完整 Checklist：

### 🤖 AI 爬蟲存取政策
- [ ] `robots.txt` 明確允許 `GPTBot`、`ClaudeBot`、`PerplexityBot`、`Google-Extended`
- [ ] 已用 `curl -A "GPTBot/1.0" https://yoursite.com/robots.txt` 驗證回應
- [ ] 付費牆或私密頁面使用 `Disallow` 精確排除

### 📄 llms.txt
- [ ] `/llms.txt` 存在且可公開存取（HTTP 200）
- [ ] 包含 `# 網站名稱` H1 標題
- [ ] 包含 `>` 簡介摘要段落
- [ ] 含有 `##` 分類連結，涵蓋主要功能頁面
- [ ] 考慮提供 `/llms-full.txt` 完整版本

### 🏷️ Schema.org
- [ ] 首頁有 `Organization` + `WebSite` JSON-LD
- [ ] 文章頁有 `Article` 並填寫 `datePublished`、`author`
- [ ] FAQ 頁面使用 `FAQPage` Schema
- [ ] 通過 Google Rich Results Test 驗證無錯誤

### 🏗️ 語意 HTML
- [ ] 每頁僅有一個 `<h1>`
- [ ] 存在 `<main>`、`<nav>`、`<header>`、`<footer>`
- [ ] 內容區塊使用 `<article>` 或 `<section>` 包裹
- [ ] 標題層級符合邏輯順序（h1 → h2 → h3）

### ⚡ SSR / 渲染
- [ ] `curl https://yoursite.com | wc -w` 輸出字數 > 200
- [ ] 無 `data-reactroot` 空殼 HTML 問題
- [ ] 動態路由頁面啟用 SSR 或 ISR
- [ ] 核心內容不依賴 JavaScript 才能顯示

### 📊 TTFB & Core Web Vitals
- [ ] TTFB < 800ms（PageSpeed Insights 驗證）
- [ ] 所有 `<img>` 有 `width` + `height` 屬性
- [ ] 非同步或延遲載入第三方腳本（`async`/`defer`）
- [ ] LCP 元素使用 `fetchpriority="high"` 與 `<link rel="preload">`
- [ ] 非首屏圖片使用 `loading="lazy"`

### 📝 Content Density
- [ ] 頁面字數（剔除 script/style）≥ 300 字
- [ ] 文字內容佔 HTML 總長度 ≥ 25%
- [ ] 核心答案在頁面前 100 字內出現
- [ ] 段落結構清晰，使用 `<ul>`/`<ol>` 條列重要資訊

### 🔗 OG / Twitter Meta Tags
- [ ] 每頁有 `og:title`、`og:description`、`og:image`
- [ ] `og:image` 尺寸為 1200×630（至少 600×315）
- [ ] 有 `twitter:card` = `summary_large_image`
- [ ] 有 `og:locale` 標示語言（如 `zh_TW`）

### 🔒 安全標頭
- [ ] `Strict-Transport-Security` 設定 `max-age` ≥ 1 年
- [ ] `Content-Security-Policy` 無 `unsafe-eval`（若可行）
- [ ] `X-Frame-Options: DENY`
- [ ] `X-Content-Type-Options: nosniff`
- [ ] `Referrer-Policy: strict-origin-when-cross-origin`
- [ ] 通過 [securityheaders.com](https://securityheaders.com) 評級 A 以上

---

## 六、總結：AEO 的核心思維轉變

在傳統 SEO 框架下，我們問的是：「Google 會如何排名這個頁面？」

在 AEO 框架下，問題變成：**「當使用者問 ChatGPT 或 Perplexity 一個問題時，我的網站有沒有足夠的技術信號，讓 AI 系統選擇引用我？」**

這要求我們同時在四個維度做到位：

1. **可被爬取**：開放 AI bot 存取，提供 `llms.txt` 導覽地圖
2. **可被理解**：語意 HTML + Schema.org，讓機器讀懂內容語意
3. **可被信任**：安全標頭 + HTTPS + 穩定的 TTFB，建立可信度信號
4. **可被引用**：內容密度高、答案明確、OG 標籤完整，讓 AI 系統有理由引用你

AEO 不是取代 SEO，而是 SEO 在生成式 AI 時代的自然延伸。掌握以上 9 大指標，是在 2026 年 AI 搜尋格局中保持內容可見性的基本門票。

---

*本指南參考來源：[llmstxt.org](https://llmstxt.org)、[schema.org](https://schema.org)、[ai-robots-txt/ai-robots-txt](https://github.com/ai-robots-txt/ai-robots-txt)、OpenAI GPTBot 文件、Google Search Central、Metzler et al. arXiv:2105.02274，以及 CiphLens AEO 評分引擎（[ciphlens.com](https://ciphlens.com)）的開源稽核邏輯。*

