# SEO

SEO 网站架构:页面地图、抓取路径与治理

SEO 网站架构:页面地图、抓取路径与治理

SEO 网站架构是网站背后的运行模型:哪些页面应该存在、每个 URL 负责什么任务、用户和爬虫怎样到达、哪些变体可以索引,以及业务改变后怎样保持结构一致。它不只是菜单,也不能简化为 Folder Pattern 或固定点击深度分数。

治理原则

每项必要的用户任务只建立一个稳定首选页面,再通过可抓取旅程、一致索引信号,以及负责维护的 Owner 把它纳入系统。

把网站架构定义成一组受控决定

层面需要决定必要产出
受众谁要完成哪项任务?Journey 与 Evidence Map
页面系统哪个 URL 负责每项任务?经过批准的 Page Map
层级页面怎样分组?Parent、Child 与 Sibling 关系
发现怎样抵达页面?导航与正文链接路径
索引控制哪些版本可以出现在 搜索?Canonical、Noindex、Robots 与 Status 规则
运营谁批准改变?Owner、Trigger 与 QA Record

让每个页面只有一个主要任务

页面可以支持多个次要行动,但需要一个主要受众、意图与结果。当两个 URL 负责相同任务时,它们会分散维护、链接、衡量和用户注意力,即使 Google 没有把它称为排名问题。

在写 Slug 前,使用搜索意图和第一方客户问题定义任务。

页面任务主要结果常见证据
首页定位并引导路线清楚定位与主要选择
Hub在一个主题内选择路线经过筛选的子资源
服务/产品评估 Offer范围、适合对象、证据与下一步
指南完成学习或执行任务直接答案、步骤与来源
案例检查真实执行背景、工作、限制与结果
政策/工具解决长期需求准确条款、联系或工具

从客户旅程开始,不从关键词清单开始

服务型企业通常要先完成实用商业核心,再建立数百篇文章。规划访客怎样发现 Offer、评估适合度、验证能力、处理疑虑和采取行动。关键词可以揭示需求,却不能独立决定业务旅程。

阶段用户问题可能目标
发现能解决我的问题吗?首页、Hub 或指南
了解具体包括什么?服务、方法或 Glossary
比较哪个选择适合?比较、方案或替代选项
验证有没有可信执行经验?案例、作品集 或批准评价
决定流程与价格怎样?流程、价格、FAQ 或联系
继续下一步该做什么?清单、相关指南或维护资源

画新结构前先建立完整 URL Inventory

Crawler 只能显示可达 URL,无法找出所有曾经建立的页面。结合 Crawl、CMS/数据库、XML Sitemap、Search Console、Analytics、Server Logs、Backlink Export 与业务记录。在确认状态前,Live、Redirect、Removed、Private 与 Staging URL 都要保留在 Inventory。

来源能找到重要限制
Crawler可达页面、链接、状态和深度无法发现真正孤立页
CMS/数据库Published、Draft 与生成记录可能包括私密或过期 URL
XML Sitemap声明的首选 URL只是提示,不是抓取或索引证据
Search ConsoleGoogle 已知与有表现 URL不同报告范围不同
Analytics有访问记录的 URL没有访问不代表没有页面
Server LogsBot 与用户真实请求需要保留与解析
Backlink Export外部引用 URL不显示站内相关性

先建立 Page Map,再设计导航

Page Map 是决定记录,不只是视觉 Sitemap。每个计划 URL 都应有任务、Parent、受众、Intent、Index State、主要转化、证据要求和 Owner。导航再从已批准旅程设计,避免意外决定信息架构。

字段要回答的问题
Preferred URL哪个稳定地址负责页面?
Page TypeHub、服务、指南、案例、Listing 还是 Utility?
Audience/Intent谁需要、要完成什么?
Parent/Sibling它属于哪里?
Incoming Path哪个已批准页面介绍它?
Index IntentIndex、Noindex、Private、Redirect 或 Retire?
Evidence什么使页面独特可信?
Owner/Review谁维护、什么时候复查?

判断一个 Query 是否值得新 URL

搜索 Volume 不是建页规则。只有当用户任务、所需答案、转化、证据或产品集合明显不同,才建立独立页面。如果同一个页面能清楚处理变体,应改善现有 Owner URL。

信号通常独立 URL通常同一 URL
Intent不同任务或决定只是不同说法
Offer范围、资格或转化不同小功能差别
Audience需求或规则明显不同相同答案配不同例子
Location真实当地运营与独特证据只替换城市名
Language完整本地化等价版本只翻译导航
Format工具或案例有独立任务FAQ 可留在主页面

使用合理层级,不追求固定深度

重点旅程应从相关 Hub 与导航直接到达。这不代表所有 URL 都要离首页一步,也没有 Google 通用“三次点击规则”。

Depth 会随着入口与 Template 改变。应该寻找无谓绕路和真正隔离,而不是把所有页面强行放平。

层级常见作用SEOWithJack 例子
1首页与主要路线/
2核心 Hub/services/, /blog/, /portfolio/web-design/
3具体 Offer 或主题/services/seo-geo/, /hub/seo/
4需要时的深入指南/案例/internal-linking-for-seo/

分开理解 URL 结构与网站结构

Google 表示它通常从页面之间的链接关系了解网站结构,而不是只看 URL Folder。整齐 Folder 可以帮助用户和运营,却不能取代菜单、分类路径和正文链接。

看起来扁平的 URL 可以属于内容系统深层;Nested URL 也可以获得明显入口。命名与链接关系都要审核。

选择可读、稳定的首选 URL

使用可读文字、有效 Encoding 与一致 Convention。避免随机 ID、Session Identifier、多余 Parameter,以及用 Fragment 加载应该独立索引的不同内容。JavaScript Route 应使用真实 URL 和 History API。

不要只为了加入关键词或删除 Folder 而改变成熟 URL。每次改变都要处理 Redirect、Internal Link、Canonical、Sitemap、Hreflang 与数据衡量。

首选 URL 标准
  • 代表页面任务,不代表临时 Template
  • 统一小写与连字符
  • 没有 index.html、Tracking Parameter 或 Session ID
  • 使用可预期 Encoding 与 Parameter Separator
  • 统一 HTTPS Host 与尾斜线政策
  • 设计或 CMS 改变后仍可保留
  • 只有真正迁移时才使用等价 Redirect
  • Links、Canonical、Hreflang 与 Sitemap 一致

只有 Folder 有助管理时才使用

Folder适合情况避免情况
/services/稳定服务系列需要 Hub为了外观移动强势旧 URL
/blog/ 或 /resources/Editorial Content 需要共同管理成为混杂 Dumping Ground
/locations/真实地区页有共同治理没有当地价值却生成所有城市
/ms/ 与 /zh-cn/语言版本完整本地化只改变 Header/Footer
/products/category/产品发现跟随维护分类Filter 产生无限组合

围绕长期选择设计主导航

主导航应该显示少量长期用户任务,而不是复制所有页面。使用具体标签、可预测互动,以及手机上相同的重要目的地。Dropdown 或 Mega 菜单 仍需支持键盘、Touch 与抓取。

Google Sitelinks 自动生成。清楚 Title、Heading、结构与相关 Anchor 有助理解重点路径,却不能保证特定 Sitelink。

导航上线检查
  • 标签不用内部术语并能说明目标
  • 每个目标都是正常 <a href>
  • Keyboard Focus 与 Escape 正常
  • Touch 用户不依赖 Hover
  • 手机版保留相同重点目标
  • 当前与展开状态容易理解
  • 没有空 Heading 或重复目的地
  • 直接连接首选 URL

Breadcrumb 帮助用户定位并显示 Parent Path;它不是浏览历史,而且层级要与 Page Map 一致。Breadcrumb Structured Data 可以辅助理解,但不能凭空创造网站架构。

Pattern合理用途风险
首页 → 服务 → SEO / GEO稳定服务层级不同 Template 出现不同 Parent
首页 → SEO Hub → 内部链接学习路径Hub 实际不存在
首页 → Category → Product浏览路线把 Filter State 当成永久 Parent
首页 → 搜索 Result → Product不合适记录暂时访问历史

用 Hub 与正文链接表达导航外关系

Hub 帮助受众选择经过维护的子主题;正文链接连接前置知识、解释、证据与下一步。继续阅读内部链接指南

不要只为了增加目录层级建立空 Hub。Hub 需要独立引导任务、清楚介绍、筛选目标与持续 Owner。

不要依靠站内搜索发现页面

Googlebot 通常不会在站内 搜索 Box 输入查询。准备抓取的页面应通过 Category、分页、Hub 或正文路径抵达。Sitemap 可以补充发现,却不会代替用户旅程。

站内 搜索 Result 往往动态、重复且缺乏作为 Landing Page 的价值。应设置明确 Crawl 与 Index Policy,避免每个 Query URL 扩张网站。

为每种页面类型指定索引状态

状态使用情况技术表达
Index独特公开页应该参与 搜索200、可抓取、一致 Canonical 与内部入口
Noindex可访问但不应出现可抓取 Page/Header Noindex
Private必须限制访问Authentication/Authorization
Canonical Duplicate有用但高度重复的变体200 加正确 Canonical
Redirect旧 URL 有等价替代301/308 到最终 URL
Retire没有资源或等价替代诚实 404/410
Blocked Crawl明确无限或低价值空间谨慎 Robots.txt Rule

让所有 Canonical 信号一致

Canonicalization 是 Google 从重复或高度相似页面选择代表 URL 的过程。声明 Canonical 是强信号而非必须执行的命令;内部链接、Redirect、Sitemap、HTTPS 与 Hreflang Cluster 也会影响选择。

首选 HTML 页使用绝对自引用 Canonical,Sitemap 与内部链接不要指向非首选变体。

Canonical 一致性检查
  • 首选页面返回 200 且可索引
  • 绝对 Canonical 位于有效 <head>
  • 重复变体指向真正等价页
  • 内部链接使用首选 Protocol、Host 与 Path
  • Sitemap 只有首选可索引 URL
  • Redirect URL 不是 Canonical/Hreflang 目标
  • 本地化版本各自 Self-Canonical
  • 上线后监控 Google Selected Canonical

从源头控制重复 Template

原因架构处理不要这样做
Tracking Parameters统一首选内部 URL 与 Canonical把 Campaign Params 放入导航
Print/Share Variants按需求合并或 Noindex索引每个展示版本
Host/Protocol VariantsRedirect 到一个 HTTPS Host当作独立网站提供
CMS Archives只保留有任务的 Archive默认索引所有 Date/Author/Tag
Location Templates要求真实当地差异只替换城市名
Staging/Demo限制访问只靠 Canonical 指向 Production

把 分页 纳入架构

Google Crawler 通常不会点击 Load More。分页中的每一页需要独立 URL 与连续正常链接,让深层项目可被发现。Fragment 不适合作为可索引页面识别。

每页通常有不同项目,应使用适合的 Self-Canonical。Google 不使用 rel="next"rel="prev"进行索引。

分页 控制
  • 每页都有稳定 URL
  • Next/Previous 是正常 Anchor
  • 无需互动即可发现深层项目
  • 不存在的页码返回 404
  • 每页有合适 Canonical
  • Filter 与 Sort 有独立规则
  • Sitemap 只含首选 Landing URL
  • 全新 Crawl 可到达代表性深层项目

把 Faceted Navigation 当成 URL 空间决定

Filter 对用户很有帮助,却可能为爬虫产生近乎无限组合。开发前先决定哪些组合值得成为 搜索 Landing Page。无需索引的 Facet 应通过经过测试的设计限制抓取路径。

要索引的 Facet 必须固定 Parameter/Path 顺序、禁止重复 Filter、空或无意义组合返回 404,并提供独特价值。Canonical 与 Nofollow 长期效果较弱,不能取代源头控制。

Facet 类型常见政策原因
Sort Order通常不索引相同项目只改变展示
Session/View State不作为索引页没有稳定 搜索 Value
热门产品属性选择性 Landing Page有独特需求与库存
多个叠加 Filter通常限制组合式 URL 增长
零结果组合404没有资源
站内 搜索 Query通常不索引不受控且重复

治理 Category、Tag、Author、Date 与 搜索 Archive

Archive 只有在具备稳定受众任务、足够有用项目、可抓取 分页、明确 Owner 和独特价值时才值得索引。CMS Taxonomy 的存在不等于搜索需求。

合并同义 Taxonomy,并限制编辑人员随意建立 Tag。作者页在作者身份重要且 Profile 有价值时有用;Evergreen 网站的 Date Archive 通常不需要成为搜索入口。

正确建立 JavaScript Route 与 Mobile Parity

每个准备索引的 View 都需要可解析 URL、正确 Status、真实 <a href>、Rendered Primary Content、独特 Metadata 与一致 Canonical。不同页面使用 History API,不要使用 Hash Fragment。

Google 使用手机版本索引。桌面重点内容与链接应保留在 Mobile Render。直接测试 Deep Route、Touch、Keyboard、Visible Focus,以及不能只在 Hover 出现的链接。

本地化之前先规划多语言架构

每种语言使用稳定独立 URL:英文主路径、马来文 /ms/、简体中文 /zh-cn/。每个真实翻译版本都 Self-Canonical,并加入双向 Hreflang Cluster。

本地化 Intent、Navigation、Anchor、Metadata 与 Conversion Journey,不只翻译正文。完整中/马来文页不能 Canonical 到英文,也不要只根据 IP 自动跳转。参阅多语言 SEO 指南

语言架构检查
  • 等价页面有独立稳定 URL
  • HTML Language 与可见内容一致
  • 每个版本 Self-Canonical
  • Hreflang 双向且有效
  • Language Switcher 正常链接等价页
  • 缺少翻译时有诚实 Fallback
  • Navigation/CTA 保持选择语言
  • Sitemap 与内部链接使用首选语言 URL

用 Structured Data 加强,不创造架构

Breadcrumb、Organization、篇文章、Product 等 Schema 可以说明已有 Entity 与页面作用,但 Markup 必须符合可见内容和支持功能。它无法弥补缺少 Category Link、薄弱页面或矛盾 Canonical。

按照 Page Type 从维护良好的 Template 输出 Schema,验证生成结果并移除不真实 Property。

选择符合网站类型的架构 Pattern

网站类型稳定核心主要风险
小型服务企业首页page → 服务 → Proof/Process/联系商业页未完成就扩张 博客
内容网站Topic Hubs → Guides → Related TasksTag/Date 分裂主题
电商Categories → Subcategories → ProductsFacets 与 分页
Marketplace/DirectoryBrowse Routes → Profiles空组合与 Thin Profile
SaaS/ProductUse Cases/Features/Resources/DocsMarketing 与 Docs 重复
多语言企业Locale Paths 与 Local Evidence局部翻译与 Hreflang 错误

判断孤立页面,并正确使用 Sitemap

真正孤立页在测试的 Link Graph 中没有任何入口。结合 Crawl、Sitemap、CMS、Analytics、Search Console、Logs 与 Backlink Records,先决定页面是否应该进入公开架构。

Sitemap 只是向 Google 声明首选 URL 的提示,不保证抓取、索引或排名。只放 Canonical、可索引的首选 URL;lastmod 只有在重大更新时才应改变。

按照网站规模处理 Crawl Budget

大部分小网站不需要复杂 Crawl Budget 项目,优先修复损坏旅程、重复 URL 生成和意外索引空间。大型或频繁更新网站可用 Server Logs、Crawl Stats 与分组 Inventory 理解 Crawl Demand 与 Capacity。

Facets、Session IDs、Duplicates、Soft Errors、Hacked URLs 与 Infinite Spaces 都可能消耗资源。应先修复生成和链接规则,不追求通用 Crawl Score。

改版与迁移时保护架构

上线前冻结已批准 Page Map,清点旧 URL 并为每个改变指定状态。只有目标真正等价时才使用 Server-Side Permanent Redirect,所有内部信号更新到最终 URL,并避免 Chain。

比较旧站、Staging 与 Production Crawl;上线后监控 404、Selected Canonical、Indexed Cohort 与客户旅程。不能把无关 Removed Page 全部跳到 首页page。

阶段控制证据
Inventory保存旧 URL 与关系Crawl、CMS、Sitemap、Logs、外链
DecisionKeep、Improve、Merge、Move、Retire/RestrictMapping 与 Owner
Staging使用最终内部链接与 Metadata没有可避免的内部 Redirect
Launch同时发布 Redirect、Sitemap 与 RobotsStatus 与 Route Tests
After Launch监控 Cohort 与异常 CanonicalSearch Console、Logs 与 Recrawl

用 Change Control 管理架构

如果 Page、Campaign、Tag 与 Filter 可以在没有 Owner 的情况下建立,架构会快速退化。应在 CMS 或 Release Process 定义 Page Type、URL Rule、Navigation Eligibility、Index Default、Redirect 与删除流程。

改变批准问题上线证据
New Page为什么现有 URL 不能负责?Page Brief 与 Incoming Path
New Taxonomy是否会长期有用并有足够项目?Eligibility 与 Empty State
New Filter会不会生成可抓取组合?Parameter 与 Index Policy
URL Change收益是否高于迁移风险?Redirect 与 Signal Map
Page Removal有没有等价目标?Status、Links 与 Sitemap Update
Navigation Change改善哪个长期旅程?Desktop/Mobile/Keyboard QA

用结果衡量,不用单一架构分数

层面衡量要回答的问题
完整性有效首选 URL 与信号技术结构一致吗?
发现可达可索引页面与抓取证据系统能找到页面吗?
选择Selected Canonical 与 Indexed Cohort正确版本参与 搜索 吗?
旅程Navigation 与 Contextual Link Usage用户能到达下一步吗?
搜索Query-to-Owner Page Alignment正确页面出现吗?
业务Landing Path 合格行动结构支持决定吗?
维护新 Orphan、Duplicate 与 Redirect Debt架构保持健康吗?

改变结构前先诊断 Pattern

现象检查不要假设
重点页未抓取Incoming href、Robots、Status、Sitemap、Logs提交 Sitemap 保证发现
错误 URL 出现Intent Owner、Canonical、Links、Duplication只因 Folder 太深
大量 Crawled-not-IndexedTemplate Value、Duplication、Facets全部需要更多内部链接
深层产品缺失Category 分页 与 Load More搜索 Box 已经足够
语言版本缺失正文、本地 Canonical、双向 HreflangGoogle 会自行推断
迁移后流量下降Redirect、Parity、Demand、Tracking单一分数解释全部

淘汰这些网站架构迷思

  • Google 没有通用三次点击规则或理想层级数量。
  • 扁平结构不会自动获得更好排名。
  • URL Folder 不能独立说明完整层级;页面链接关系更重要。
  • 每个 Slug 加关键词不是架构策略。
  • Sitemap 不能取代正常入口或保证索引。
  • Breadcrumb Schema 不能创造网站本身不支持的层级。
  • 更多 Category、Tag、Filter 与 Location Page 不会自动建立权威。
  • Canonical 是信号,不是解决无限重复 URL 的强制命令。
  • Robots.txt 控制抓取,不能可靠移除已经知道的 URL。
  • 不是每个孤立页面都值得加链接。
  • 不能把所有 Removed Page 跳到 首页page。
  • 没有架构可以保证抓取、索引、Sitelinks、排名、流量或转化。

可重复的网站架构流程

从 Inventory 到受治理上线
  1. 定义受众、Offer、任务与证据。
  2. 结合 Crawl、CMS、Sitemap、Search Console、Analytics、Logs 与 外链。
  3. 为每个现有 URL 指定任务和索引状态。
  4. 按 Intent 聚合需求,并为每项任务选择一个 Owner URL。
  5. 批准商业核心、Hub 与支持页面。
  6. 规划 Parent、Sibling、Incoming 与 Conversion Path。
  7. 设定 URL、Canonical、Hreflang、分页、Facet 与 Archive 规则。
  8. 从批准旅程设计可访问 Desktop/Mobile Navigation。
  9. 改变 URL 前准备 Redirect。
  10. 从正常入口 Build 并 Crawl Staging。
  11. 测试 Direct Route、Rendered Mobile、Status 与 Signals。
  12. 通过 Change Control 上线并监控 Page-Type Cohort。

常见问题

网站应该有多少层?

没有统一数字。让重点旅程直接,只有真实信息或产品关系需要时才增加深度。

扁平架构排名更好吗?

不一定。合理层级与相关链接,比强行把所有 URL 放在同一层更有用。

Google 会用 URL Folder 判断层级吗?

可读 Folder 有助用户和运营,但 Google 表示页面链接关系是理解网站结构的重要方式。

博客 一定要使用 /blog/ Folder 吗?

两种方式都可行。选择稳定 Convention,不要只为了外观移动成熟 URL。

不能。它只是暴露首选 URL 的提示,不会建立浏览旅程或保证抓取索引。

Tag 与 Filter Page 应索引吗?

只索引有稳定受众任务、独特价值和持续 Owner 的精选页面。

不是必须,但真实可见路径有助定位;Structured Data 必须符合实际关系。

旧 URL 应怎样处理?

仍合适就保留;否则跳到真正等价目标,没有替代时返回 404/410。

多语言页面怎样安排?

使用稳定 Locale URL、完整本地化、各自 Self-Canonical,并用双向 Hreflang 连接等价页。

什么时候审核架构?

改版、迁移、新 Taxonomy 和大规模扩展前审核,并持续监控 Orphan、Duplicate 与 Redirect Debt。

官方参考资料

需要更明确的下一步?把 URL Inventory 变成有治理的 Page Map。

分享现有 Sitemap、服务与内容计划;Jack 可以在开发扩大问题前找出页面 Ownership、无谓 URL 空间、缺失旅程与迁移风险。

通过 WhatsApp 讨论网站架构

Jack Lee

Jack Lee

Building 搜索 Visibility with SEO, GEO & AI 辅助网站 ,分享来自实际项目和实验的经验。