跳至主要内容
短.be

URL 片段标识符

URL 中「#」之后的部分。用于直接链接到页面内的特定区域,也用于单页应用的路由。

2026 年 8 月 24 日 / 约 1 分钟阅读

短链接

URL 片段标识符 (Fragment Identifier,也称哈希) 是 URL 中「#」符号之后的部分。例如 "https://example.com/page#section2" 中的 "#section2" 就是片段标识符。浏览器会利用它自动滚动到页面中 id 属性匹配的元素位置。RFC 3986 第 3.5 节把片段定义为在已取得的资源之内间接指向某个次级资源,并说明其含义取决于该资源的媒体类型;HTML 中跳到 id 匹配的元素,正是这一解释的体现。想指向没有 id 的位置时,还可以在 #:~:text= 之后直接写出正文中的文字,即文本片段。不过它只在读者主动发起的跳转中生效;浏览器不支持,或者指定的文字在文档中找不到时,整个片段指令会被忽略,直接打开文档顶部。

片段标识符有一个重要特性:不会发送到服务器。当浏览器访问 "https://example.com/page#section2" 时,发送给服务器的请求只有 "https://example.com/page","#section2" 部分完全由浏览器端处理。

这一特性与短链接有关,但并不意味着片段会丢失。HTTP 规范 (RFC 9110 第 10.2.2 节) 规定,当重定向响应的 Location 值不含片段部分时,用户代理必须把该值视为继承了原始引用的片段来处理这次重定向。也就是说,打开 "https://example.com/abc#section2" 时,服务器收到的只有 "/abc",但浏览器会把 "#section2" 带到跳转目标。真正不会被带过去的情形是跳转目标本身带有片段,此时以目标的片段为准。另一个要留意的点是,片段会从原来的链接直接传到另一个站点:同一规范第 17.11 节指出,这可能造成把一个站点的片段公开给另一个站点,并说明如果在片段里放了涉及个人的信息,就应当在跳转到其他站点时附上 (可以为空的) 片段部分,以阻止这种继承。此外,有些服务在保存原始 URL 时会把片段截掉,因此原始 URL 含有片段时,最可靠的做法是生成后实际打开确认。

在单页应用 (SPA) 中,片段标识符有时用于路由。例如 "https://app.example.com/#/dashboard"、"https://app.example.com/#/settings" 这样的哈希路由。这种写法的好处是不需要服务器端配置就能工作,但 Google 关于 URL 结构的指南说明,Google 搜索基本上不支持 URL 片段,并建议不要用片段来切换页面内容,而应改用 History API;它的 JavaScript SEO 文档也把通过片段加载内容的哈希式导航列为应当避免的写法。如果改用 History API 的路径路由 (/dashboard、/settings),就需要在服务器端配置成无论直接打开其中哪个 URL 都返回该应用。

从 SEO 角度看,用片段的差异来切换内容的设计还是避开为好。如前所述,Google 明确表示搜索基本上不支持 URL 片段,因此不能指望 "example.com/page" 和 "example.com/page#section2" 被当作两个页面来对待。如果希望页面内的特定区域在搜索结果中单独出现,应把它设计成独立的 URL (子页面),而不是使用片段标识符。

这篇文章对您有帮助吗?

相关术语

URL 参数

在 URL 末尾以「?」之后附加的键值对。用于传递搜索条件和追踪信息。

URL 编码

将 URL 中的特殊字符和非 ASCII 字符转换为百分号编码格式的过程。

永久链接

长期保持不变的固定网址,为特定内容提供稳定的引用地址。

Slug

Slug 是 URL 中用于标识页面的人类可读字符串。通常由小写字母、数字和连字符组成,用于替代自动生成的 ID,提升 URL 的可读性和 SEO 效果。

URL 规范化 (写法统一)

将表示形式不同但指向同一资源的多个 URL 转换为统一标准格式的处理。对防止重复内容至关重要。

段落索引

Google 在整个页面的相关性之外,还会考虑网页中特定段落 (passage) 相关性的机制。

相关文章

图解网址缩短原理 - 重定向的技术背景

结合 HTTP 响应示例和 Base62 编码计算实例,详细解说网址缩短服务实现重定向的技术原理。

美丽 URL 的条件 - 从设计师视角思考 URL 的美学

URL 也有「美」。从可读性、可记忆性、品牌协调等设计角度考察理想 URL 的条件。介绍可应用于短链接短码设计的美学原则。

URL 为什么那么长?拆开来一个个看懂它

用寄信地址来打比方,通俗易懂地讲解网站 URL 变长的原因。从协议、域名、路径、参数各部分的作用,到追踪参数让 URL 越来越长的原理,再到在社交媒体上遇到的各种麻烦,以及短链接诞生的背景和它解决了什么问题,全部一次说清楚。即使是初学者也能轻松看懂,是了解互联网基础知识的好起点。

常见问题

片段标识符和查询参数有什么区别?
查询参数 (?key=value) 会发送到服务器,用于服务器端处理。片段标识符 (#section) 不会发送到服务器,仅在浏览器端处理。这一区别会影响短链接的重定向处理。
短链接能保留片段标识符吗?
如果是自己在短链接末尾加上片段,按 HTTP 规范 (RFC 9110 第 10.2.2 节),只要跳转目标自身没有片段,浏览器就会把它带到目标去。而如果是把含有片段的原始 URL 拿去缩短,这部分会不会被保存下来则取决于服务的实现方式。如果这一点很重要,请在生成后实际打开确认。
片段标识符会影响 SEO 吗?
Google 表示搜索基本上不支持 URL 片段,因此不能指望片段的差异会被当作不同的页面来评价。不过像从目录跳转这样的页面内链接,确实能让读者更快到达想看的位置;这是阅读体验上的好处,而不是片段本身获得了评价。

把知识用到真实链接上

免费缩短网址