
事情起因

不管是链接跳转技术栈不友好还是本身链接数少都影响SEO表现
最近总感觉部分客户网站页面的Crawling非常费劲,新页面总是很久才被爬虫发现;因为没代码背景,所以始终搞不清问题在哪儿,毕竟从用户行为上,点击链接也能顺利跳转;前两天看AITDK的Links突然发现页面内能跳转的链接数和显示的链接数对不上,后者小很多,一问技术栈是location.href,哦豁,果然有问题;实现页面跳转一般是下面这三种方式:
<a href="https://www.example.com">访问Example网站</a>window.open("https://www.example.com/", "_blank");// This will redirect the current browser window to Example Page. window.location.href = "https://www.example.com";
翻了谷歌的技术文档不推荐JS based动态注入的跳转(就是第二和第三种),因为可能无法抓取,就等于这条链接在谷歌眼里是不存在的;之前问秋风他还说了句,第三种是前端最喜欢写的,也确实如此,其他客户的网站有相同问题的也不少
| 跳转方式 | SEO友好度 | 爬虫可识别 | 权重传递 | 推荐程度 |
|---|---|---|---|---|
<a>标签 | ✅ 高 | ✅ 是 | ✅ 是 | 🟢 强烈推荐 |
window.open() | ❌ 低 | ❌ 否 | ❌ 否 | 🔴 不推荐 |
location.href | ❌ 低 | ❌ 否 | ❌ 否 | 🔴 不推荐 |
什么是<a>标签
<a href="https://www.example.com">访问Example网站</a>HTML中的<a>标签定义超链接,从一个资源跳转到另外一个资源(不单单是页面,<a>标签可以链接的还包括电子邮件地址,图片,视频和其他资源)
- 如果超链接从一个资源跳转到同一个站点的其他资源,则被称为内部链接(Internal Links)
- 如果超链接从一个资源跳转到其他网站的资源,则被称为跳出链接(External Links)
HTML <a> 标签的组成部分

- 开始标签:表示 <a> 标签的开始
- 标签属性和属性值(Tag attribute and attribute values):指明标签链接到的页面,并影响用户点击标签时的行为
- 锚文本(Anchor text):用户点击以访问链接的文本
- 结束标签:"</a>",表示<a>标签的结束
<a>标签属性
Href
"Href"代表"超文本引用",代表标签应该链接到的资源,这个属性在标签中是强制的,不然点击锚文本没有地方跳转
Rel
"Rel"是"relationship"的缩写,代表当前资源和链接到的资源之间的关系,单个Rel属性可以包括多个值;这个属性的值有:
Noopener:
当用户点击在新标签页或窗口中打开链接时,跳转页面不控制当前页面;所以跳转页面无法将用户重定向到钓鱼诈骗或其他不安全的页面
<a href="https://www.example.com" target="_blank" rel="noopener">Visit Example.com</a>Noreferrer:
禁止链接资源将当前页面识别为其访客来源;所以GA4这样的归因工具在报告中将这些访客归类为"直接流量(Direct Traffic)",而不是"推荐流量(Referral Traffic)",并将跳转页面归为推荐来源;"Noreferrer"自带"noopener"属性,即使标签没有
<a href="https://example.com" rel="noreferrer">External Link</a>Nofollow:
不传递权重,如果没有配置默认所有标签链接默认是dofollow的,传递权重
<a href="https://www.example.com" rel="nofollow">This is a nofollow link</a>Sponsored:
Nofollow的一种,赞助内容,一般是分销链接
<a href="https://www.example.com/product" rel="sponsored">Learn more about this product</a>UGC:
Nofollow的一种,用户生成内容
<a href="https://example.com" rel="ugc">User-generated content</a>Target
"target"属性告诉用户浏览器在何处打开链接资源,如果标签不包含"target"属性值,它将默认为"target"属性值"_self",这将在同一框架中打开链接资源;"_blank"属性会让链接在新的浏览器标签或窗口中打开
<a href="https://www.example.com" target="_blank">Visit Example.com</a>| rel属性值 | 权重传递 | 流量归因 | 安全性 | 使用场景 |
|---|---|---|---|---|
| 默认(dofollow) | ✅ 传递 | 正常归因 | 一般 | 内部链接、信任的外链 |
| nofollow | ❌ 不传递 | 正常归因 | 一般 | 不信任的外链、付费链接 |
| noopener | ✅ 传递 | 正常归因 | ✅ 高 | 新窗口打开的链接 |
| noreferrer | ✅ 传递 | ❌ 直接流量 | ✅ 高 | 隐私保护场景 |
<a>标签的主要用途
- 链接到其他网页:允许用户从当前网页跳转到另一个网页,让用户阅读其他相关内容,增加停留时长
- 传递权重:是最主要的SEO用途,区别于其他链接跳转方式
- 链接到同一页面的不同部分:在长页面中创建目录或锚点,让用户点击链接可以跳转到页面特定位置,也叫"anchor links" 或 "jump links"
- 链接到其他资源:可以链接到文件(如PDF),图片或其他资源
- 创建占位符链接:在没有实际目标时,可以作为虚拟超链接的占位符
最佳SEO实践
- 网站内和SEO/增长有关的页面都使用<a>标签(用户交互后台无所谓)
- <a>标签可被抓取
- 锚文本使用描述性文字,简洁且具体(不使用"点击这儿");可以参考我网站的链接,都是精心优化过的
- Internal Links不使用Nofollow;External Links保险起见均使用Nofollow
总结
<a>标签是网站SEO的基础设施,直接影响搜索引擎的抓取效率和权重分配。
核心要点:
- 避免JS跳转,使用标准HTML <a>标签确保爬虫可识别
- 合理配置rel属性:内链保持dofollow,外链根据信任度选择nofollow
- 优化锚文本:描述性强、包含关键词、长度适中(8-12词)
- 重视用户体验:适当使用target="_blank"和rel="noopener"
实施建议:
- 立即审查现有网站的链接实现方式
- 使用Google Search Console监控链接抓取状况
- 定期检查内链结构和锚文本优化程度
遵循这些实践,网站的搜索引擎友好度和用户体验都将显著提升
参考文献
- HTML Anchor Element: A Simple Guide for Beginners – Semrush
- Google的链接最佳实践 – 谷歌官方文档