免费SEO审计:如何发现并修复技术问题(不用Screaming Frog)
想免费做一次技术SEO审计?这份完整指南告诉你该检查什么、为什么重要,以及如何把流程自动化,每次部署都自动跑一遍。不用付费工具,也能轻松找出并修复网站技术问题。
Screaming Frog 的 SEO Spider 一年要收 £149。工具确实不错,但对大多数独立站来说,免费也能拿到同样的分析结果。
技术 SEO 审计能揪出那些让页面排不上去的隐形问题:死链、缺 canonical、孤儿页面、重复内容、缺 H1。这些修复一点都不炫酷,但每一个都是你和自然流量之间的障碍。
技术 SEO 审计都查什么
1. 死链(404)
站里每一个死链都是死胡同。既浪费 Googlebot 的抓取预算,用户体验也差。
要查什么:每个内部链接(<a href>)都要返回 200 状态码。不能有 404,不能有 500。
常见原因:
- 页面改名了但没配重定向
- 区分大小写的服务器上遇到大小写问题
- 尾部斜杠不一致(
/pagevs/page/) - 删掉的页面还在被旧内容引用
2. 缺 canonical 标签
每个需要被索引的页面都要有 canonical 标签:
<link rel="canonical" href="https://example.com/page/" />
没有它,Google 可能会把同一个页面的不同版本(带不带尾部斜杠、带不带查询参数等)都当成独立页面来索引,把你的排名信号给分散掉。
要查什么:每个页面都恰好有一个 canonical 标签,指向正确的 URL。
3. 缺 H1 或 H1 重复
每个页面应该有且只有一个 <h1> 标签,里面放主关键词。缺 H1 会让 Google 搞不清页面主题;多个 H1 会稀释信号。
要查什么:每页恰好一个 H1,里面包含目标关键词。
4. 缺 meta description
Meta description 不直接影响排名,但影响搜索结果里的点击率。没有 description 的页面会被自动生成摘要,质量通常不怎么样。
要查什么:每个页面都有独特的 meta description(120-160 字符)。
5. 孤儿页面
孤儿页面就是出现在 sitemap 里、但没有任何内部链接指向它的页面。Googlebot 可能压根发现不了它。
要查什么:sitemap 里的每个页面,至少要有来自其他页面的一条内部链接。
6. Sitemap 问题
你的 sitemap 应该:
- 包含所有可索引的 URL
- 排除不可索引的 URL(admin、API、noindex 页面)
- 用正确的格式(XML sitemap index + 子 sitemap)
- 在 robots.txt 里被引用
要查什么:sitemap 里的 URL 要和实际页面匹配。sitemap 里不能有 404。不能有页面漏进 sitemap。
7. 图片缺 alt 文本
没有 alt 属性的图片:
- 屏幕阅读器读不到(无障碍问题)
- 没法在图片搜索里排名
- Google 无法理解图片内容
要查什么:每个 <img> 都有描述性的 alt 属性。
8. robots.txt 问题
你的 robots.txt 应该:
- 放行所有内容页面
- 屏蔽 admin/API/noindex 页面
- 不要屏蔽 CSS/JS 文件(Google 渲染页面需要这些)
- 引用你的 sitemap
要查什么:重要页面没被屏蔽。CSS/JS 没被屏蔽。
跑一次免费的 SEO 审计
方法一:自动化(适合静态站)
如果你的站点是构建成静态 HTML 的(Astro、Hugo、Next.js 静态导出),可以直接审计构建产物:
python3 -m zens_ink.site_audit --dist dist --sitemap dist/sitemap.xml
这个命令会扫描:
- 构建目录下所有的 HTML 文件
- 所有链接(内部和外部)
- Canonical 标签
- H1 标签
- Meta description
- 图片 alt 文本
- Sitemap 覆盖率
- 孤儿页面
输出:
=== SEO Audit Report ===
Pages scanned: 48
Issues found: 7
[CRITICAL] Broken internal links: 2
- /blog/old-post → 404 (linked from /blog/)
- /about → 404 (linked from footer)
[WARNING] Missing canonical: 1
- /tags/seo has no canonical tag
[WARNING] Missing H1: 1
- /404 page has no H1
[WARNING] Missing meta description: 3
- /tags/python
- /tags/github
- /tags/free
[INFO] Orphan pages (in sitemap, no internal links): 2
- /blog/untitled-post
- /legacy/old-page
=== Summary ===
Critical: 2 | Warnings: 5 | Info: 2
Fix critical issues immediately. Address warnings before next publish.
方法二:手动(适合任何站点)
非静态构建的站点,手动审计:
- Google Search Console > 覆盖范围(Coverage):看哪些页面被 Google 收录了,哪些被排除了,原因是什么。
- Google Search Console > 效果(Performance):看哪些查询给你带来了展示。
- Google 搜
site:yoursite.com:看总收录页数,顺便检查有没有意外出现的 URL。 - 手动点一遍:把每个导航链接都点一遍,看有没有 404。
- 查看页面源码:检查关键页面的 canonical、H1、meta description。
按优先级修复
问题不都一样重要。按这个顺序修:
| 优先级 | 问题 | 影响 |
|---|---|---|
| P0 | 死链(404) | 立即 — 浪费抓取预算,体验差 |
| P0 | 缺 canonical | 立即 — 重复内容惩罚 |
| P1 | 孤儿页面 | 高 — 页面可能根本不会被抓取 |
| P1 | 缺 H1 | 高 — Google 搞不懂页面主题 |
| P2 | 缺 meta description | 中 — 影响搜索点击率 |
| P2 | Sitemap 问题 | 中 — 新页面被发现得更慢 |
| P3 | 缺 alt 文本 | 低 — 只影响图片搜索 |
| P3 | robots.txt 微调 | 低 — 默认配置通常没问题 |
在 CI/CD 里自动化审计
最好的审计就是自动跑的那种。把它加进你的部署脚本:
#!/bin/bash
# post-build audit
npm run build
python3 -m zens_ink.site_audit --dist dist --sitemap dist/sitemap.xml
if [ $? -ne 0 ]; then
echo "SEO audit failed. Fix issues before deploying."
exit 1
fi
npm run deploy
这样就不会带着死链或缺失标签去部署了。
多久审计一次?
- 新站:首次部署前审计
- 活跃站点:每次大批量更新内容后审计(每周或每两周)
- CI/CD:每次部署都审计
- 每季度:做一次完整的人工复查,包括内容质量,不只是技术问题
常见问题
怎么做免费的 SEO 审计?
静态站用 zens_ink.site_audit,或者手动在 Google Search Console 里看抓取错误、查看页面源码检查 canonical/H1/meta 标签、用 site:yoursite.com 查收录情况。全部免费。
什么是孤儿页面?
孤儿页面就是出现在 sitemap 里、但没有内部链接指向它的页面。Googlebot 可能发现不了它。解决办法是从相关页面加一些上下文相关的链接。
怎么找站里的死链?
在构建好的站点上跑 zens_ink.site_audit --dist dist,它会检查每个内部链接有没有 404。如果是线上站点,用 Google Search Console 的覆盖范围功能找抓取错误。
技术 SEO 审计和内容审计有什么区别?
技术审计检查 HTML 结构(canonical、H1、死链、sitemap)。内容审计评估内容质量、关键词布局和话题覆盖。两个都重要——先做技术,再做内容。
SEO 审计要花多久?
一个 50 页的静态站,自动化审计 30 秒内跑完。人工过一遍结果并修复问题,看问题多少,一般 1-2 小时。
技术问题修完之后,可以看看 内部链接策略,让页面的可见性最大化。完整的内容生产流程,可以参考我们的 SEO 工作流指南。