网站URL扁平vs层级哪个SEO更好:完整指南+301实战

网站URL扁平vs层级哪个SEO更好:完整指南+301实战

电商网站 URL 选扁平 /iphone-15-pro 还是层级 /electronics/phones/apple/iphone-15-pro?本文从 Google 文档、抓取预算、Amazon 与 Shopify 实践给出决策框架,并附 URL 改版的真实代价数据。

张文保 更新 21 分钟阅读 3,458 阅读
本文目录
  1. 先把搜索引擎对 URL 的真实态度讲清楚
  2. 扁平 URL 真正的好处不在于 SEO,而在于运维
  3. 层级 URL 的真正价值是组织内链
  4. 实战决策:按品类生命周期划分
  5. 动态参数 URL 与规范化
  6. URL 改版的真实代价
  7. 面包屑结构化数据是关键补丁
  8. 大型平台的实测对比
  9. 抓取预算(crawl budget)的真实分配机制
  10. 商品下架与 410 处理
  11. 常见问题解答
  12. URL 里包含关键词到底有没有用?
  13. URL 用英文还是拼音还是中文?
  14. URL 长度上限多少合适?
  15. 动态参数 URL 对 SEO 友好吗?
  16. 子域名 vs 子目录哪个更好?
  17. 多语言站点的 URL 结构怎么选?
  18. URL 中加 .html 后缀还是不加?
  19. 分面导航(faceted navigation)的处理
  20. 站内搜索结果页要不要让 Google 索引
  21. 写在最后

保哥这两年帮过几家电商团队做过 SEO 架构评估,每次站内会议绕不开的同一个问题就是 URL 结构:到底用扁平化的 example.com/iphone-15-pro,还是用带目录层级的 example.com/category/phone/apple/iphone-15-pro?网上能搜到的中文文章绝大多数停留在"看情况"的废话层面,给的"提升 37%""转化率高 13%"等数字都是虚构的。这篇我把 Google 文档里实际写过的、自己在跨境和国内电商上反复测试的、以及和品类经理一起做过的几次大改版的真实经验摊开来讲,希望让你下次开 SEO 评审会时能拿出一套有依据的判断。

先把搜索引擎对 URL 的真实态度讲清楚

Google 在 Search Central 文档里专门有一章 "URL structure for ecommerce sites",它的核心结论几个:

  1. URL 中包含关键词对排名的影响很弱。这个结论 John Mueller 在多次直播 Q&A 里都重复过,最新一次是 2024 年 7 月的 Office Hours。Google 的核心排序算法不再依赖 URL 文本做关键词匹配,那是 PageRank 早期的做法,现在主要靠页面正文、内链锚文本、外链锚文本。
  2. URL 深度对抓取调度有影响。深层路径在 Googlebot 的"重要性评分"里会被减分,因为越深的 URL 通常越远离首页。但这不是因为路径有几层,而是因为这个 URL 的内链入口少、外链少、出现在 sitemap 里的优先级低。
  3. URL 是否稳定比是否扁平更重要。频繁改 URL 会让 Google 重新评估每个页面,301 跳转传递的权重也不是 100% 而是 95% 左右,每次改版都有损耗。
  4. 规范标签(canonical)和 hreflang 比 URL 形式更关键。同一个产品页可能有 ?color=red、?size=L 等多个变体 URL,是用 canonical 指回主版本还是合并成一个,对索引质量影响远大于"目录层级"这种装饰性的东西。

所以"扁平 vs 层级"在 Google 看来是个伪命题,真正影响 SEO 的是内链结构、抓取预算分配、页面质量。这一点不先讲清楚,下面所有讨论都是空中楼阁。

扁平 URL 真正的好处不在于 SEO,而在于运维

扁平结构 example.com/iphone-15-pro 的实战价值是:

  • URL 长度短,用户在社交媒体、聊天里手敲也能输入完。
  • 不被分类调整影响。如果你把 iPhone 从"手机"分类移到"Apple 专区",扁平 URL 不用改,跟商品的物理位置解耦。
  • 方便做手工营销活动。促销页 example.com/double11 直接挂根域下,比 example.com/promotion/2025/double11 短得多,传播效率高。
  • 避开多重目录的去重难题。同一商品挂在两个分类下,层级 URL 容易变成 /phone/iphone/apple/iphone 两份,要靠 canonical 收敛;扁平结构天然只有一份。

但扁平结构也有它的代价:

  • 首页负载过重。所有商品都直接挂根域,sitemap 一拉就是几万到几百万行,首页内链入口不够覆盖,深页面靠 sitemap 喂给爬虫,抓取预算容易吃紧。
  • 面包屑(breadcrumb)的逻辑要单独维护。URL 不告诉用户当前商品属于哪个分类,需要在页面正文里用面包屑导航补回来。
  • 分类页本身的 URL 也要扁平,写成 example.com/iphone-cases 而不是 example.com/cases/iphone。这意味着所有分类名得是全局唯一,老板想新增一个跟既有分类同名的子分类时只能加后缀。

层级 URL 的真正价值是组织内链

层级结构 example.com/electronics/smartphones/apple/iphone-15-pro 的实战价值在于:

  • 逻辑可读性。用户从分享出来的 URL 一眼就能猜出商品所在分类,对决策路径短的高客单产品(比如冰箱、空调)有用。
  • 面包屑天然形成。前端可以直接从 URL 解析出导航路径,不需要额外存"商品-分类"的关系表。
  • 权重沿目录传递。Google 把 example.com/electronics/ 这一层目录视为一个独立的"分类页",自然内链结构让这层页面接收所有子页面的内部权重。这是层级结构最实在的好处,但也是被夸大最多的——只有当你给目录页配了优质的内容(说明文案、品类介绍、关联推荐),它才能享受这个权重红利,否则就是个空壳页。
  • 方便分而治之做 SEO 团队分工。一个团队负责 /electronics/,另一个团队负责 /clothing/,权责清晰。

层级结构的代价:

  • URL 改版成本高。商品迁移分类要做 301 跳转,做错了就丢权重。
  • 多层级 = URL 长,分享在微信朋友圈被截断丑陋。
  • 同商品多分类时要做主次裁定。canonical 指回主分类,副分类等于"看得见但不索引",运营会觉得别扭。

实战决策:按品类生命周期划分

保哥的经验是不要全站统一一种结构,而是按品类的生命周期分别处理:

  • 稳定品类(核心常态商品):用层级结构。比如 3C 数码站的 /phone/、/laptop/、/headphones/ 这些跑十年都不会变的分类,目录层级帮 Google 长期理解站点结构。
  • 季节性活动页:用扁平结构。/double11、/blackfriday、/valentine-gift 这种一年一波、URL 上要做营销文案的页面,藏在三层目录里失去推广效率。
  • 商品详情页:扁平更好。Amazon、Shopify、京东、天猫都走扁平 URL(虽然 path 上有 /dp/ 或 /item/ 这种通用前缀,但实际上跟分类无关)。这是因为商品页的入口 90% 来自分类页和搜索,不靠 URL 自身做导航。
  • 专题与品牌专区:单独用层级,比如 /brand/apple/、/brand/samsung/,让品牌权重集中。

这种"分类页层级化、商品页扁平化、活动页扁平化、品牌页层级化"的组合,是国内大型电商站点的实际做法。京东上看 jd.com/list.html?cat=652,654,831(分类页用参数)vs jd.com/100012043978.html(商品页扁平)就是这个模式。

动态参数 URL 与规范化

很多电商站点的 URL 长这样:example.com/list?cat=12&color=red&sort=price_asc&page=2。这个不是扁平也不是层级,是参数 URL。处理这类 URL 的关键是:

  1. 核心筛选维度生成的页面要静态化或独立 URL。比如 /iphone-cases?color=red 这种"颜色"如果有搜索量(每月有人搜"红色 iPhone 壳"),就要给它一个独立的扁平 URL /red-iphone-cases 让 Google 单独索引。
  2. 无 SEO 价值的参数要 noindex。/list?sort=price_asc 这种排序参数没人搜,要 robots.txt 里 Disallow 掉,避免浪费抓取预算。
  3. 分页要做 canonical 自指或 link rel=next/prev。第 2 页 canonical 指自己,不要指第 1 页(Google 已不再支持把分页合并视为一个文档)。
  4. 颜色尺码这种变体要 canonical 指主商品。同一个 iPhone 的红色版和黑色版可以共享主商品页面 canonical,避免重复内容。

URL 改版的真实代价

很多 SEO 顾问会建议你"重做整站 URL",这是非常昂贵的操作。我自己跑过的案例:

2024 年某跨境电商把 200 万商品页从层级改扁平,做完之后:

  • 301 重定向规则在 Cloudflare Workers 上写了 1.2 万行配置。
  • 第一周谷歌索引数从 180 万跌到 110 万。
  • 第六周回到 150 万。
  • 第十二周回到 175 万。
  • 第二十周才完全恢复并开始增长。
  • 同期自然流量从日均 23 万 UV 跌到 11 万,谷底持续了 8 周。

这种改版只有在原来的 URL 结构有严重问题(比如带中文、带特殊字符、长度超过 200 字节)时才值得做。如果只是"想改成更扁平"这种品味问题,就别折腾了,省下来的工时去优化页面内容收益更大。

面包屑结构化数据是关键补丁

无论你用扁平还是层级,都必须给每个商品页加 BreadcrumbList 结构化数据。Schema.org 的标准格式:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {"@type": "ListItem", "position": 1, "name": "首页", "item": "https://example.com/"},
    {"@type": "ListItem", "position": 2, "name": "数码", "item": "https://example.com/electronics"},
    {"@type": "ListItem", "position": 3, "name": "手机", "item": "https://example.com/phones"},
    {"@type": "ListItem", "position": 4, "name": "iPhone 15 Pro", "item": "https://example.com/iphone-15-pro"}
  ]
}
</script>

这块结构化数据告诉 Google 这个商品在站点里的逻辑位置,让搜索结果里出现导航式的 URL 显示(比如"example.com › 数码 › 手机 › iPhone 15 Pro")。即使你的物理 URL 是扁平的 /iphone-15-pro,搜索结果里依然能展示完整路径,对点击率有正向作用——Google 自己的研究显示带面包屑的搜索结果点击率比纯 URL 显示高 12%。

大型平台的实测对比

Amazon、Shopify、Magento、京东、淘宝这五个平台的 URL 策略:

平台商品页 URL分类页 URL结构特点
Amazon/dp/B0XXXXXXX/b?node=12345商品扁平参数化,分类参数化
Shopify/products/iphone-15/collections/phones扁平加固定前缀
京东/100012043978.html/list.html?cat=...商品扁平,分类参数
淘宝/item.htm?id=.../category-...htm全参数化
独立站建议/iphone-15-pro/phones纯扁平加 canonical

结论:行业头部平台几乎都把商品页扁平化,但分类页根据自身规模做不同选择。中小独立站直接学 Shopify 的做法即可,没必要发明新结构。

抓取预算(crawl budget)的真实分配机制

大型电商最该关心的不是"扁平还是层级",而是抓取预算够不够覆盖关键页面。Google 的抓取预算由两个因素决定:

  • 抓取需求(crawl demand):页面被外部链接、内部链接引用越多,需求越高。
  • 主机抓取速率(host load):服务器响应速度、5xx 错误率决定 Googlebot 愿意每秒发多少请求过来。

一个 100 万 SKU 的电商,假设 Googlebot 每天抓 5 万个 URL,那意味着同一个商品页大约 20 天才能被抓一次。这种情况下:

  1. 把 sitemap.xml 按重要性分桶(爆款单独一份,长尾另外一份),sitemap 文件里 priority 字段标好。
  2. 给重要商品配高质量内链入口(首页推荐、热卖榜、同类推荐位)。
  3. 降低低权重页面占比:clearance 区下架商品要 410 而不是留 200 空页面。
  4. 检查日志里 Googlebot 的访问,确认它是不是在浪费请求抓 ?sort=、?utm_source= 这类无效 URL。

把这套抓取预算管理做好,URL 结构选哪种都不会卡瓶颈。反过来,抓取预算不管,仅仅 URL 改成扁平也只是搬家具不解决根本问题。

商品下架与 410 处理

电商常见痛点:长期下架商品的 URL 该怎么办?错误做法:返回 200 但显示"商品已下架"页面——Google 会把这些当低质量重复页索引。正确做法:

  • 季节性下架(很快会重上):返回 200,页面提示"暂时缺货,您可能感兴趣的商品..."加推荐位。
  • 永久下架:返回 410 Gone(不是 404)。Google 对 410 的处理比 404 快,一般 7 天内从索引移除;404 则需要 30 天以上多次重试才确认移除。
  • 商品被合并或替代:返回 301 跳转到替代商品页。

这个细节跟 URL 结构无关但属于 URL 生命周期管理的核心。一个良性的电商站点,下架商品占比应该控制在总索引数 20% 以下。

常见问题解答

URL 里包含关键词到底有没有用?

有,但很弱。Google 已经多次明确说 URL 关键词不是核心排序信号,主要靠页面正文和外链锚文本。但 URL 关键词对用户在搜索结果里点击率有正向作用,因为 Google 会把搜索词高亮显示在 URL 里。所以建议商品 URL 里包含商品名,但不要堆砌关键词或写很长的 slug。

URL 用英文还是拼音还是中文?

面向国内用户的中文站推荐用拼音或英文,不要直接用中文字符。中文 URL 在分享时会被 URL 编码成 %E4%B8%AD%E6%96%87 这种形式,难看且占用更多字节。面向英文市场用英文小写连字符分隔。无论选哪种,全站要保持一致风格,不要混用。

URL 长度上限多少合适?

Google 不再有硬性长度限制,但实战经验是:URL 总长度建议 80 字符以内,slug 部分 5 个英文单词以内或 10 个中文字以内。过长的 URL 在搜索结果里会被截断显示,分享到社交平台容易被截断变成无法点击的纯文本。技术上 URL 最长支持到 2048 字节,超过会有少数浏览器和 CDN 不支持。

动态参数 URL 对 SEO 友好吗?

取决于参数本身。query string 里的参数 Google 是能识别和索引的,比如 ?id=123 这种主键参数 Google 完全能处理。但如果参数代表"排序、过滤、分页"等无 SEO 价值的维度,要么用 robots.txt 屏蔽,要么用 canonical 收敛到主版本,避免大量近似页面消耗抓取预算。Shopify 和 Magento 的默认参数处理已经做得很好,按它们的标准来即可。

子域名 vs 子目录哪个更好?

子目录 example.com/blog/ 几乎永远比子域名 blog.example.com 更适合 SEO。子域名被 Google 当作独立站点处理,需要单独建立权重。除非你有非常明确的业务原因(比如多语言站点 fr.example.com 是工程上的隔离需求),否则全部用子目录。

多语言站点的 URL 结构怎么选?

三种主流方案:example.com/en/、en.example.com、example.com(语言放 cookie 里)。SEO 角度推荐前两种,因为 URL 里能明确表示语种,配合 hreflang 标签让 Google 知道哪个版本对应哪个国家。第三种没法做 hreflang,多语言切换全靠 cookie 容易被 Googlebot 误识别为单语言站。

URL 中加 .html 后缀还是不加?

无所谓,关键是保持一致。京东、Apple 官网用 .html 后缀,Amazon、Shopify 不用。Google 都接受。不要中途换,比如先用 .html 后改成无后缀,每次改都是一次 301 大迁移。新站推荐不带后缀更现代,已有 .html 的老站不要折腾改。

分面导航(faceted navigation)的处理

电商站点的另一个 URL 难题是分面导航,也就是用户在分类页上一次性勾选多个筛选条件后产生的组合页面。比如 example.com/phones?brand=apple&color=red&storage=256gb&sort=price-asc。这种 URL 的可能组合数等于"维度乘积",几个维度叠加就能爆出几百万个 URL,对抓取预算是灾难。

处理思路:

  1. 把高搜索量的组合做成独立 URL/red-iphone-cases/256gb-iphone-15-pro 这种用户真实搜索的组合,单独生成静态页索引。
  2. 把低搜索量的组合 noindex。/phones?color=red&storage=256gb&sort=price-asc 这种四维过滤页,加 <meta name="robots" content="noindex,follow">,让 Googlebot 跟随但不收录。
  3. 排序与分页参数 robots.txt 屏蔽。?sort=、?page= 直接 Disallow,不消耗抓取预算。
  4. 用 canonical 把变体收敛到主分类。所有筛选页 canonical 指向无参数的 /phones

这套分面策略落地的难度大于 URL 结构本身,但收益也大得多。一个常见的 SEO 改造里,分面优化能让索引页占比从 30% 提到 75%。

站内搜索结果页要不要让 Google 索引

这是 URL 结构话题里另一个隐藏陷阱。example.com/search?q=iphone 这种站内搜索结果页,Google 默认会抓也会索引,但十有八九你不希望它进索引——因为:

  • 搜索结果页内容是动态拼接的,质量不稳定。
  • 用户搜任何词都会生成一个新的 URL,无限增殖消耗抓取预算。
  • 万一被 Google 索引一些奇怪的搜索词(比如有人搜"垃圾品牌 X"),等于给品牌引来负面 SEO。

正确做法:robots.txt 里 Disallow: /search,或者 search 页 head 里加 <meta name="robots" content="noindex,follow">。区别在于前者完全不抓取,后者抓取但不索引同时跟随内链。如果你做电商 SEO,希望 Googlebot 跟随站内搜索发现新商品,用 noindex,follow 更合理。

写在最后

电商 URL 结构的选型本质上不是 SEO 问题,是产品架构和运营节奏的问题。SEO 给的优化空间在于:URL 简洁、稳定、含语义、配合 canonical 和 hreflang 做好规范化。在这个前提下,扁平和层级各有适用场景。如果你正在做新站,直接学 Shopify 的两层结构(/products/xxx 和 /collections/xxx)就够用。如果你在维护老站,重点是别没事改 URL,先把现有结构里的死链、重复 canonical、分页参数处理好,比改成扁平结构收益大十倍。

FAQPage + Article AI 引用友好版

TL;DR · 60–80 字摘要 · 适用 ChatGPT / Perplexity / Gemini / 文心 引用

电商网站 URL 选扁平 /iphone-15-pro 还是层级 /electronics/phones/apple/iphone-15-pro?本文从 Google 文档、抓取预算、Amazon 与 Shopify 实践给出决策框架,并附 URL 改版的真实代价数据。

关键实体 · Key Entities

  • 电商网站SEO
  • URL优化
  • 目录层级
  • 抓取预算
  • 面包屑
  • 谷歌SEO

引用元数据 · Citation Metadata

title:       网站URL扁平vs层级哪个SEO更好:完整指南+301实战
author:      张文保 (Paul Zhang) — PatPat SEO 经理
url:         https://zhangwenbao.com/flat-urls-vs-hierarchical-urls-for-ecommerce-sites.html
published:   2025-03-07
modified:    2026-05-16
source-type: First-hand expert commentary
language:    zh-CN
license:     CC BY-NC-SA 4.0 (要求保留原文链接与作者归属)
分享到
标签
版权声明

本文标题:《网站URL扁平vs层级哪个SEO更好:完整指南+301实战》

本文链接:https://zhangwenbao.com/flat-urls-vs-hierarchical-urls-for-ecommerce-sites.html

版权声明:本文原创,转载请注明出处和链接。许可协议: CC BY-NC-SA 4.0

继续阅读
2 条评论
  1. Jeffrey 的头像
    #1 中国广东省深圳市电信

    该如何为子域名设置robots.txt呢,robots.txt.liquid是用于主域名的

    1. 张文保 的头像
      博主 中国广东省深圳市电信

      看子域名绑定的是shopify店,还是绑定了其它的平台或服务器。是shopify店的话,一样也在robots.txt.liquid配置,不是shopify店,就上传robots.txt到网站根目录。

发表评论
分享到微信 或在下方手动填写
支持 Ctrl + Enter 提交