seo.uesd.io

技术 SEO 的最小可用清单

技术 SEO 的目的一句话:让爬虫用最低成本理解你的站点,且不产生歧义。 它不会让烂内容变好,但能让好内容不被埋掉。

一、可抓取:robots.txt

放在 public/robots.txt,随构建一起发布:

User-agent: *
Allow: /

Sitemap: https://seo.uesd.io/sitemap-index.xml

注意最后一行必须是绝对 URL。Disallow 写错一次,整站掉出索引——上线前用 Google Search Console 的“robots.txt 测试工具”跑一遍。

二、可索引:一个 URL 只属于一个页面

同一份内容能通过多个 URL 访问,是排名稀释最常见的原因:

处理方式分两层:域名层用 Cloudflare 的 Redirect Rules 统一 301, 页面层用 canonical 声明规范版本:

<link rel="canonical" href="https://seo.uesd.io/blog/post/" />

三、标题与描述

元素 作用 长度
<title> 决定搜索结果的主标题 中文约 30 字,英文 60 字符
description 影响点击率,不影响排名 中文约 75 字,英文 160 字符
<h1> 页面主题,全页一个 不限制,但要具体

标题里不要堆关键词。关键词 A_关键词 B_公司名 这种写法,点击率通常比正常句子低。

四、sitemap 与收录

Astro 的 @astrojs/sitemap 在构建时自动生成 /sitemap-index.xml, 它只会收录渲染出来的页面——所以 site 配错了,sitemap 就是一堆错 URL。

提交给 Search Console 之后,新页面通常几天内被抓取; noindex 的页面不要放进 sitemap,两个信号会打架。

五、结构化数据

JSON-LD 是让 Google 理解“这是什么内容”的标准做法。 文章用 BlogPosting,导航用 BreadcrumbList,公司用 Organization。

验证工具:Search Console 的“富媒体搜索结果测试”。 结构化数据标的是事实,不是许诺:日期、作者、评分都必须和页面内容一致。

六、最后:性能也是 SEO

Core Web Vitals 里的 LCP、INP、CLS 已经是排名信号。 静态站点的优势就在这里——没有 hydration,没有数据库往返, 一个 HTML 文件从 Cloudflare 边缘节点返回,LCP 通常在一秒以内。

先把这六件事做对,再去谈内容策略。