robots.txt说允许,GPTBot仍有10个站进不去
一个页面拿不到,先别急着改内容。正确的顺序是把同一个地址换几种身份各要一次,逐项比较状态码、正文字节数和最终落点,两次结果不一样就说明问题出在送达层而不是内容层。本文给出七种身份对照的完整跑法,包括基线怎么从数据内部长出来、什么算真的拿到了页面、拒绝页可以用哪四类信号自动识别、声明层与送达层的两层对齐审计怎么在半小时内做完,最后是一份每天跑一分钟、覆盖五个地址三种身份的监测清单。
标签
保哥笔记 技术SEO 标签下共 50 篇文章合集,含《技术SEO一堆问题先修哪个?500站实测排出来的优先》《Core Web Vitals在AI搜索时代还值不值》《电商SEO最重要的5点:从AI爬虫到accessib》等,与 Core Web Vitals、AI爬虫、结构化数据 主题密切相关,覆盖 SEO/GEO 实战角度的深度解析与可落地方案。
一个页面拿不到,先别急着改内容。正确的顺序是把同一个地址换几种身份各要一次,逐项比较状态码、正文字节数和最终落点,两次结果不一样就说明问题出在送达层而不是内容层。本文给出七种身份对照的完整跑法,包括基线怎么从数据内部长出来、什么算真的拿到了页面、拒绝页可以用哪四类信号自动识别、声明层与送达层的两层对齐审计怎么在半小时内做完,最后是一份每天跑一分钟、覆盖五个地址三种身份的监测清单。
排查条件请求要按关卡来:先看响应头里有没有可以拿来协商的凭据,再连发两次看凭据稳不稳,然后带着凭据重发一次看回不回304,最后确认最后修改时间填的不是当前时刻。文中把这套顺序在211个国际化电商域名上走了一遍,逐关给出该看哪个头、判据定在哪、失败对应哪种成因,末尾附一张四种失败对应四种修法的对照表和一份三分钟自检。
排查顺序比工具重要:先抓一次首页把标签剥干净数字符,判断这一页有没有把内容交出来;正文正常再进第二层,在字节里找按钮的名字、图片的替代文本、表单标签和地标区域;只有字节里找不到、而页面上确实有的,才需要打开浏览器看渲染后的无障碍树。文中把这三层在211个国际化独立站上走了一遍,逐层交代口径怎么定、基线从哪来、哪些样本必须先剔掉,末尾给出一张行业参照表、一份分诊流程和三个能在一个下午跑完的动作。
把一个站上不归自己管的部分清点出来的完整方法:先扫首页与结算流程的外部域,逐条标注归属、用途和去掉之后的后果分四档;再把清单转成内容安全策略的来源白名单;最后挂一个每日快照差分,盯住外部域清单、页面标题和结构化数据块这三个低噪声字段。文中给出135个品牌站的依赖图谱、两次快照相隔两天半的变化率拆分,以及一次删掉九个域的清理复盘。
给robots.txt里的爬虫名单做一次核对的完整量法:先从访问日志提取真实来访的抓取标识,再逐个对文件里的名字算命中率,接着按用途把来过的分成五类给不同待遇,最后给每个分组补一行注明依据和日期的注释。含157份文件281个令牌与59天248万行日志的交集实测。
谷歌把自己的抓取客户端分成三份清单,其中特例爬虫那一份里,AdsBot-Google、AdsBot-Google-Mobile、Mediapartners-Google和APIs-Google四条下面写着同一句话:全局用户代理会被忽略;Google-Safety更彻底,完全不看robots.txt。这意味着你那行星号覆盖的范围小于你以为的范围,而覆盖之外那几个恰好后果最直接。本文把日志里的用户代理与robots.txt里的令牌这两套字典…
做法是把每张表最多20行12列的单元格连同标签类型一起原样取下来,再写一段还原程序按四条判据逐张试:首行是不是全部为表头单元格、有没有跨行跨列、各行格子数是否一致、列名是不是既非空也非纯数字,任何一条不满足就归进对应的失败类型。单位不从采集端的正则读,改成从表格矩阵离线重算,因为括号写法那种形式会被常规正则整批漏掉。格子总数不超过两个的空壳表单独摘出,不进还原成功率的分母。
给响应头做一次接收端体检的完整量法:先取两次响应头做差集分清每个字段是自己加的还是平台加的,再逐个查它在规范里的状态与浏览器实现状态,接着先补新版写法再按确定性分三批删除,最后把结论同步给做安全审计的人。含142个站逐字段实测与一张判断结果对照表。
实验台用真实浏览器逐页打开55个英文独立站的商品页,等渲染完成并滚动一次之后,同时清点五类可能承载尺码信息的东西:真表格、计算样式为网格的伪表、老式CSS表格布局、整张图片形态的对照表,以及定义列表;再单独记录页面上有没有尺码指南这类入口,把入口与内容逐页对上。为了区分“页面没写”和“我没等到”,另挑三十个站做了两组对照:同一个地址等5秒与再等20秒各量一次,以及替用户点开尺码指南之后再量一次。限流与失效的页面逐条记录,没有拿去凑分母。
Googlebot对单个网址只取前2097152个字节,超出的部分不会报错,只是不存在。本文逐字节量了46个真实电商与建站平台的页面:未压缩HTML中位数972274字节、均值1131569字节,4个页面已越过上限,7个用掉八成以上预算,其中lovevery一个组合装页离上限只剩23个字节。更值得看的是受伤程度完全不按超标幅度排:anker两个页面超标最多却一个链接都没丢,allbirds男款分类页只超27.49%,288个链接被切掉9…
把评测网站的背书写成机器读得懂的关系,正确分工是Product节点上挂subjectOf、WebPage节点上挂citation,Review里再用itemReviewed反指回来把这条边闭合。这篇给出可以直接改的JSON-LD骨架,说明author为什么必须写成Organization、评分为什么绝对不能并进aggregateRating、验证该用schema.org官方验证器而不是富媒体结果测试,最后附一段查属性合法性的代码,自己就…
做法是抓首页声明的每一份样式表,把里面定义的类名跟首页加一个内页的类名求交集。尺子改过三次:正则会把url里的文件后缀当类名,而修它的那一刀更狠,反复挖花括号会把整个媒体查询里的选择器一起挖掉。
做法是给每个站要十一个编出来的地址,再要两个真实存在的当零点,同一个不存在的地址要两遍看字节稳不稳。尺子失效过一次:第一轮采得太密,三十六个站改口回429,放慢重跑之后又有七个站反过来被拒。
客户拿着一条当地语言法规过来要求照做,可实测下来那套字在网上一个字符都找不到。这里给出网页侧与搜索侧的两组零结果、国界另一侧八个站的编码欠账清单,以及一套不懂这门语言也能跑完的排查动作。
离网太阳能站的缅甸语页面,团队和本地同事截出来的图不一样。这里给出50个缅甸站的编码实测、一条从三分之二掉到零的迁移曲线、21个旧地址今天全部打不开的存量账,以及两天能跑完的排查流程。
规范把这项默认值定成零,而它自称等价的HTTP/2参数默认是4096:同一套机制迁过来,默认状态从开着变成了关着。逐档扫描还量出一个反常现象——容量从1024加到3072,均摊不降反升二十字节,付了管理开销却没省到最长那个字段。把请求头拆开这一招在长度过线之前越拆越亏、过线之后拆四条能省2.3倍。另含服务端可接收头部上限的取值分布,以及十三个站根本没宣告这一项。
自建nginx五端口实验台把发现机制逐条复现:漏写listen ssl而只留quic那一档,语法检查通过、进程正常、端口在听,浏览器却永远找不到它;撤掉广告头之后服务照常应答,证明它只是块牌子而非开关;OpenSSL兼容层下ssl_early_data形同虚设且毫无提示。另含缓存有效期中位二十四小时、十个站还挂着旧草案版本号、云安全组只放行TCP时形成的排查盲区,以及那条能救回首次连接的DNS记录为何多数客户端拿不到。
对六个真实站点各发一次HEAD和一次GET做集合差:三分之一的站两边对不上,缺的字段里有cache-control、last-modified、content-length和vary,而RFC 9110第9.3.2节明写服务器MAY省略这些只在生成正文时才确定的值,还点名了Content-Length与Vary。同轮实测另外三组数据:裸curl收到的字节是压缩后的6到13倍,而Googlebot那2MB上限按未压缩数据计算;同一个URL…
户外露营站的波兰语页展现涨了点击不动,三轮排查都在自己这一侧。这里给出取材源清单怎么列、二十分钟抄写自查怎么做、四类差异各修哪一处,以及站点名那一格怎么定。
nginx实验台实测:上游按语言分内容却不发Vary,德语用户灌入缓存后,中文、英文、法语用户与Googlebot全部命中同一份德语页面;把Vary补上又会让20个Accept-Language取值生成20份副本、实际只对应3种内容。另含230个URL的Vary现网分布、首访下发Cookie占比50.4%,以及proxy_ignore_headers导致会话串号的最小复现。