[{"data":1,"prerenderedAt":328},["ShallowReactive",2],{"blog-anchor-text-strategy":3,"blog-prev-anchor-text-strategy":113,"blog-next-anchor-text-strategy":210},{"id":4,"title":5,"author":6,"body":7,"canonical":97,"category":98,"cover":97,"date":99,"description":100,"draft":101,"extension":102,"keywords":97,"meta":103,"navigation":104,"noindex":101,"ogImage":97,"path":105,"seo":106,"seoDescription":97,"seoTitle":97,"stem":107,"tags":108,"updated":97,"__hash__":112},"blog\u002Fblog\u002Fanchor-text-strategy.md","内链锚文本：同一个词链 40 次反而没用","元析智能",{"type":8,"value":9,"toc":87},"minimark",[10,14,18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84],[11,12,13],"p",{},"内链锚文本不是关键词堆得越多越好。我们做过对比：同一个目标页用 40 个相同锚文本链接，排名不如用 8 个自然锚文本的页面。",[15,16,17],"h2",{"id":17},"一个真实的实验",[11,19,20],{},"2025 年 11 月，我们在两个内容结构相似的客户站上做了对照。",[11,22,23],{},"A 站：一个核心产品页，站内有 40 条内链指向它，锚文本全部是\"项目管理软件\"。",[11,25,26],{},"B 站：同样一个核心产品页，站内有 8 条内链指向它，锚文本分别是\"项目管理工具\"\"项目排期系统\"\"团队协作平台\"\"看看这个功能\"等自然说法。",[11,28,29],{},"三个月后，B 站那个页面的目标词排名从第 12 升到第 6，A 站从第 11 升到第 13。",[11,31,32],{},"样本只有两个站，但方向很清楚：堆同一个锚文本，效果不如自然分布。",[15,34,35],{"id":35},"为什么堆锚文本没用",[11,37,38],{},"第一，过度优化的锚文本分布本身就是异常信号。正常网站的内链，锚文本是多样化的，因为不同页面的上下文不同。",[11,40,41],{},"第二，锚文本只影响\"这个页面讲什么\"的判断，重复 40 次不会加强这个判断，只会显得刻意。",[11,43,44],{},"第三，堆锚文本的内链往往质量差：为了塞链接而加的链接，上下文不相关，反而稀释权重。",[15,46,47],{"id":47},"锚文本的三个原则",[11,49,50],{},"第一，锚文本要描述目标页的内容，不是复制关键词。用户点之前应该能猜到点进去看到什么。",[11,52,53],{},"第二，多样化。同一个目标页，用不同的说法链接，从不同角度的页面链过去。",[11,55,56],{},"第三，控制数量。一个目标页有 5 到 15 条高质量内链，比 50 条机械链接有用。",[15,58,59],{"id":59},"别把所有链接都写关键词",[11,61,62],{},"我们见过客户把导航、页脚、侧边栏里所有指向产品页的链接都写成关键词，一个页面出现 20 多次同样的锚文本。",[11,64,65],{},"这种做法不仅没用，还可能触发过度优化的判断。至少把一部分改成\"了解更多\"\"查看功能\"\"定价\"这类自然说法。",[15,67,68],{"id":68},"怎么改",[11,70,71],{},"第一步，导出站内链接，按目标页分组，看每个目标页有多少条内链、锚文本分布。",[11,73,74],{},"第二步，锚文本单一且数量超过 15 条的，改掉一部分，换成自然的描述。",[11,76,77],{},"第三步，给重要的目标页补几条来自相关内容的链接，锚文本用上下文里的自然说法。",[15,79,80],{"id":80},"判断",[11,82,83],{},"锚文本是\"描述\"，不是\"投票\"。你越想让搜索引擎记住一个词，越应该用自然的表达说清楚这个页面是什么。",[11,85,86],{},"把内链当成给用户指路，锚文本自然就对了。",{"title":88,"searchDepth":89,"depth":89,"links":90},"",2,[91,92,93,94,95,96],{"id":17,"depth":89,"text":17},{"id":35,"depth":89,"text":35},{"id":47,"depth":89,"text":47},{"id":59,"depth":89,"text":59},{"id":68,"depth":89,"text":68},{"id":80,"depth":89,"text":80},null,"技术SEO","2026-10-25","内链锚文本不是关键词堆得越多越好。我们做过对比：同一个目标页用 40 个相同锚文本链接，排名不如用 8 个自然锚文本的页面。三个原则、一次实验数据和一个常见误区都在这篇，看完能立刻对照着改。",false,"md",{},true,"\u002Fblog\u002Fanchor-text-strategy",{"title":5,"description":100},"blog\u002Fanchor-text-strategy",[109,110,111],"内链","锚文本","页面权重","j-SlYAnFSYyfK6DQm7chAc4w8bDbP4U2wS26_NqGiwE",{"id":114,"title":115,"author":6,"body":116,"canonical":97,"category":198,"cover":97,"date":199,"description":200,"draft":101,"extension":102,"keywords":97,"meta":201,"navigation":104,"noindex":101,"ogImage":97,"path":202,"seo":203,"seoDescription":97,"seoTitle":97,"stem":204,"tags":205,"updated":97,"__hash__":209},"blog\u002Fblog\u002Fclient-says-no-results.md","客户说没效果，先和他对齐这三个词",{"type":8,"value":117,"toc":190},[118,121,125,128,131,134,138,141,144,147,151,154,157,160,163,166,169,172,175,178,181,184,187],[11,119,120],{},"2026 年 10 月一个客户在会上说做了半年没效果。我们花了四十分钟对齐三个词，会开完他说了一句：早这么讲我就不会这么想。大部分没效果，是双方说的不是同一件事。",[15,122,124],{"id":123},"第一个词效果","第一个词：效果",[11,126,127],{},"客户说效果，可能指四件事：自然流量、留资数量、品牌搜索量、核心词排名。",[11,129,130],{},"这四个数的走势经常不一样。流量涨了但留资没涨，可能是内容带来了不匹配的访客；留资涨了但品牌搜索没动，可能是长尾在起作用。",[11,132,133],{},"我们先问一句：你说的效果具体是哪个数？这个问题看起来简单，但一半的争议到这里就解开了。",[15,135,137],{"id":136},"第二个词周期","第二个词：周期",[11,139,140],{},"SEO 的见效周期是三到六个月，内容是资产型投入，不是广告。",[11,142,143],{},"一个站从技术修复到收录正常要四到六周，从收录到有曝光要再等四到八周，从曝光到稳定点击还要时间。这个链条讲清楚，客户对“半年”的期待会变。",[11,145,146],{},"反过来，如果做了六个月连曝光都没有，那不是周期问题，是方向或执行有问题，得换方法。",[15,148,150],{"id":149},"第三个词归因","第三个词：归因",[11,152,153],{},"客户怎么算 SEO 的功劳？是最后一次点击，还是多触点？是看表单提交，还是看销售签单？",[11,155,156],{},"软件公司的成交链条长，用户可能先搜文章、再看官网、最后直接访问注册。GA4 默认记成直接访问，SEO 的贡献就被低估了。",[11,158,159],{},"我们现在的做法是：在报告里同时给首次点击和最终转化的数据，并说明统计口径。别让客户自己去猜。",[15,161,162],{"id":162},"对齐之后还是不满意",[11,164,165],{},"两种处理。",[11,167,168],{},"一种，调整目标。把“三个月流量翻倍”改成“三个月核心词进前 20、留资翻倍”，这个更可实现，也更容易验收。",[11,170,171],{},"另一种，承认做不到。如果客户要的是短期收入，SEO 不是合适的工具，应该去做投放。这句话我们说过很多次，说完有的客户走了，有的把预算改了结构，继续合作。",[15,173,174],{"id":174},"一个判断方法",[11,176,177],{},"我会问客户一个问题：如果再给你一次机会，你还会选 SEO 吗？",[11,179,180],{},"回答“会，但会更早开始”，说明问题在预期。回答“不会，我应该投广告”，说明渠道选错了，跟执行无关。",[11,182,183],{},"分清这两种，比解释数据有用。",[15,185,186],{"id":186},"我的立场",[11,188,189],{},"客户说没效果的时候，先别辩解，也别立刻认错。先把三个词对齐。对齐之后你会发现，大多数情况是双方一直在不同的尺子上量东西。",{"title":88,"searchDepth":89,"depth":89,"links":191},[192,193,194,195,196,197],{"id":123,"depth":89,"text":124},{"id":136,"depth":89,"text":137},{"id":149,"depth":89,"text":150},{"id":162,"depth":89,"text":162},{"id":174,"depth":89,"text":174},{"id":186,"depth":89,"text":186},"行业观察","2026-10-24","大部分没效果是预期错位，少数是真的没做好。这篇写效果、周期、归因三个词怎么对齐，对齐之后如果还是不行，该怎么调整合同和交付。",{},"\u002Fblog\u002Fclient-says-no-results",{"title":115,"description":200},"blog\u002Fclient-says-no-results",[206,207,208],"客户沟通","预期管理","SEO效果","j8QrJj0ZhhDe8po-SNiFQE-T6Zc8csgRrtz7eP3y7I0",{"id":211,"title":212,"author":6,"body":213,"canonical":97,"category":98,"cover":97,"date":317,"description":318,"draft":101,"extension":102,"keywords":97,"meta":319,"navigation":104,"noindex":101,"ogImage":97,"path":320,"seo":321,"seoDescription":97,"seoTitle":97,"stem":322,"tags":323,"updated":97,"__hash__":327},"blog\u002Fblog\u002Fedge-cache-static-generation.md","静态化加边缘缓存，把首屏压进一秒内",{"type":8,"value":214,"toc":308},[215,218,221,224,227,230,233,236,239,242,245,248,251,254,257,260,263,266,269,272,275,278,281,284,287,290,293,296,299,302,305],[11,216,217],{},"2026 年 10 月我们给一个文档站做了静态化和边缘缓存，首字节从 900 毫秒降到 120 毫秒，首屏进入一秒内。改动不涉及业务逻辑，只是把渲染的结果提前算好，放到离用户近的地方。",[15,219,220],{"id":220},"静态化解决什么",[11,222,223],{},"动态渲染每次请求都要查数据、拼模板，再快也有几百毫秒。",[11,225,226],{},"静态化就是提前生成 HTML，请求来了直接返回文件。服务器压力也降下来了，一个静态文件能扛住大量并发。",[11,228,229],{},"对搜索引擎也有好处：返回稳定、内容完整、不依赖 JS。",[15,231,232],{"id":232},"哪些页面能静态化",[11,234,235],{},"营销页、产品页、文档页、博客文章、案例页，这些内容变化不频繁，全部可以。",[11,237,238],{},"不能静态化的是个性化内容：登录后的后台、购物车、实时数据看板。",[11,240,241],{},"中间状态是列表页和搜索页。可以静态化基础部分，动态部分用客户端填充，但要小心 CLS。",[15,243,244],{"id":244},"边缘缓存怎么配",[11,246,247],{},"把静态文件推到 CDN，缓存时间设长，用文件名哈希做版本。",[11,249,250],{},"HTML 的缓存时间设短，五分钟到一小时，配合主动刷新。",[11,252,253],{},"缓存键只保留路径，别把查询参数和 Cookie 算进去，否则命中率会很低。",[15,255,256],{"id":256},"内容更新怎么触发",[11,258,259],{},"三种方式。",[11,261,262],{},"第一，增量构建。内容变了只重新生成受影响的页面，几分钟完成。",[11,264,265],{},"第二，webhook 触发。CMS 发布时调用构建接口，全量或增量重建。",[11,267,268],{},"第三，短 TTL 兜底。就算触发失败，缓存到期也会自动回源，最多晚一小时。",[11,270,271],{},"三种一起用最稳，我们给客户的配置就是这样。",[15,273,274],{"id":274},"预热很重要",[11,276,277],{},"静态化之后第一批访问的用户，如果缓存还是冷的，体验和以前一样。",[11,279,280],{},"我们的做法是发布后主动请求一遍核心页面，把缓存预热。二十个页面，两分钟跑完。",[11,282,283],{},"预热脚本放在发布流程里，自动执行，别靠人记得。",[15,285,286],{"id":286},"一个常见的误解",[11,288,289],{},"静态化不等于不用服务器。构建、预热、缓存刷新都需要服务，只是请求量大时不再实时渲染。",[11,291,292],{},"还有一层容易忽略：静态文件如果没开压缩，传输体积会大两三倍。构建产物要先压好再上传，别指望 CDN 自己处理所有格式。",[15,294,295],{"id":295},"一个态度",[11,297,298],{},"静态化是 TTFB 优化里最彻底的一招，能到百毫秒级。但它的前提是内容能提前算好。",[11,300,301],{},"对于需要实时数据的站，静态化只能覆盖一部分页面，别硬上。",[11,303,304],{},"还有一个隐形成本：构建时间。几千页的站，全量构建可能要十几分钟，所以增量构建是必须的。",[11,306,307],{},"我们给客户的验收标准是：核心页面首字节低于 300 毫秒，首屏 LCP 低于 1.5 秒。做到这两个数，性能这条线基本不用再操心。",{"title":88,"searchDepth":89,"depth":89,"links":309},[310,311,312,313,314,315,316],{"id":220,"depth":89,"text":220},{"id":232,"depth":89,"text":232},{"id":244,"depth":89,"text":244},{"id":256,"depth":89,"text":256},{"id":274,"depth":89,"text":274},{"id":286,"depth":89,"text":286},{"id":295,"depth":89,"text":295},"2026-10-26","一个文档站改成静态生成加边缘缓存，首字节从 900 毫秒降到 120 毫秒。这篇写哪些页面能静态化、缓存怎么失效、内容更新怎么触发。",{},"\u002Fblog\u002Fedge-cache-static-generation",{"title":212,"description":318},"blog\u002Fedge-cache-static-generation",[324,325,326],"静态化","边缘缓存","TTFB","sy-zNNIR7TINDZIiu3RNeDIdS1F9nCyefVfmqTOHvMU",1794088100377]