本文要点
- Shopify 于 2026 年 8 月 28 日宣布,商家可用 Web Bot Auth HTTP 签名授权自定义爬虫、脚本和审计工具访问 Online Store。
- 每次请求必须同时携带 Signature-Input、Signature 和 Signature-Agent;只改 User-Agent 不会变成已验证流量。
- 商家生成的签名绑定一个已连接域名,最长有效期三个月,到期不能续期,只能新建并更新工具。
- 签名只用于分析在线店面,不授予 checkout 访问;搜索引擎和大型语言模型正常索引也不要求商家签名。
- 403、429 或挑战页不能单独证明是 IP 问题;先做无签名、当前签名和新签名的小批对照,仍失败就停手并保存证据。
扫描昨天能跑,今天却卡在 403 或 429
具体场景是:团队准备用 Screaming Frog、自建脚本或第三方审计工具检查商品页,首页偶尔能打开,批量请求却出现 403、429、验证码或 local rate limit。可见症状相似,但可能分别来自未签名流量、签名格式错误、域名不匹配、签名过期,或工具进入了不受签名覆盖的 checkout。失败成本是审计缺页、监控误报和重复消耗抓取窗口;错误直觉是不断换 User-Agent、提高并发或轮换 IP。
正确第一步是停止扩大扫描,保存一个失败 URL、时间、响应状态和工具实际发出的请求头。确认请求是否同时包含 Signature-Input、Signature、Signature-Agent,再去 Shopify Admin 的 Online Store > Preferences > Crawler access 核对名称、域名和到期时间。
新入口解决的是身份识别,不是无限放行
Shopify 8 月 28 日的更新把 Web Bot Auth 作为商家可用入口公开:自有爬虫、脚本和工具可以用 HTTP 签名证明请求来自已授权来源。Shopify 开发者更新同时说明,未签名的 bot 和 agent 会受到更严格的 Storefront 与在线店面速率限制;有效签名用于争取较高访问层级,不等于取消全部限流。
旧做法常靠 User-Agent、来源 IP 或降低速率猜测平台是否信任请求;新做法增加了可验证身份。它没有改变 robots 规则、应用权限、Storefront API token 或 checkout 安全层,也不能保证任意第三方工具自动支持这三个请求头。
先判断你是否真的需要 Web Bot Auth
适用任务包括自有店面的 SEO 与可访问性审计、自动化测试、数据分析和其他经商家授权的自动访问。商家可以在 Crawler access 中为已连接域名生成签名,再把三项值配置到支持自定义请求头的工具。
普通搜索引擎和大型语言模型索引店铺不要求商家替它们创建签名。签名也不允许访问 checkout;若失败 URL 已进入结账域或需要登录,应该回到对应的 Checkout、应用或账户权限流程,不要把签名当作绕过安全检查的凭据。
从后台到首轮请求的六步检查表
第一,在 Online Store > Preferences > Crawler access 创建描述清楚的签名。第二,只选择当前店铺已经连接的目标域名。第三,设置不超过三个月的必要有效期。第四,完整复制 Signature-Input、Signature、Signature-Agent 三个值。第五,在工具中确认三个请求头会随每个页面和资源请求发送。第六,先用低并发抓取一个公开商品页和一个集合页,核对响应后再扩大。
不要把签名写入公开仓库、截图、工单正文或浏览器前端代码。记录签名名称、负责人、绑定域名、创建与到期时间;到期前创建新签名并小批验证,确认新配置工作后再让旧签名自然到期。官方说明现有签名不能修改有效期,也不能续期。
403、429 与挑战页按四层分流
第一层查请求:三个头是否齐全,值是否被代理、重定向或工具配置转义。第二层查签名:是否到期、是否绑定当前域名、工具是否错误抓取 myshopify.com 与自定义域名的另一侧。第三层查范围:失败是否只发生在 checkout、登录或其他额外安全页面。第四层才查速率与网络:降低并发,对同一公开 URL 比较直连、无签名和有效签名结果。
只看到 429 不能证明签名已经被接受,也不能证明平台封禁了某个 IP。若新签名、正确域名和低速小批请求仍返回相同挑战,停止轮换出口和重复请求,保存 request ID、响应头、失败样本及工具版本,交给 Shopify 或工具支持方确认。
回滚与停手条件
更新扫描器前保留旧配置,并把首轮范围限制在不会写入数据的公开页面。若配置后出现更多 4xx、抓取数量异常下降、工具泄露签名、请求被重定向到错误域名,立即停批,移除有风险的工具配置,并在后台重新生成新的签名;不要继续使用已经暴露的值。
如果无签名的正常浏览也失败,再参考<a href="/resources/proxy-connection-troubleshooting-checklist">代理连接排查清单</a>区分 DNS、TLS、认证与目标站响应。需要稳定运行合规审计工具时,可<a href="/" target="_blank" rel="noopener noreferrer">访问 PuppyIP 官网</a>了解网络环境;网络只能改善连接路径,不能替代有效签名、平台权限或合理速率。
常见误区:签名不是白名单万能钥匙
误区一是只添加 Signature 而漏掉另外两个请求头。误区二是同一签名跨多个域名复用;商家签名绑定一个域名。误区三是签名到期后修改日期继续用;官方要求新建。误区四是认为签名可以访问 checkout 或登录态页面;这些入口有额外安全边界。
误区五是把所有 403、429 都归因于代理质量。签名格式、域名、到期和速率都会产生相似症状。正确顺序是先核请求与签名,再核范围和速率,最后才检查网络,不要用换 IP 掩盖身份校验失败。
资料来源
常见问题
Shopify Web Bot Auth 是什么时候开放给商家的?
Shopify Changelog 于 2026 年 8 月 28 日宣布,商家可以创建 HTTP 签名来授权自定义爬虫和工具访问 Online Store。
Web Bot Auth 需要发送哪些请求头?
商家后台生成的配置包含 Signature-Input、Signature 和 Signature-Agent;三个值都应随每次目标请求发送。
签名可以使用多久?
Shopify Help Center 说明最长三个月。签名到期后不能续期或修改有效期,需要创建新签名并更新工具。
为什么加了签名仍然出现 429?
先检查三个头是否完整、是否绑定当前域名、是否到期,以及工具是否进入 checkout。有效签名用于身份验证和较高访问层级,并不承诺无限请求。
搜索引擎抓取店铺也需要我创建签名吗?
不需要。Shopify 官方说明,搜索引擎和大型语言模型可以在没有商家签名的情况下正常索引店铺。
遇到 403、429 应该先换 IP 吗?
不应该。先验证请求头、签名、域名、到期时间和页面范围;只有出现 DNS、TLS、连接超时等独立网络证据时,才单独排查网络。