Claude可见性优化前,外贸站如何检查ClaudeBot访问是否被拦截?

浏览进度条

检查 ClaudeBot 是否被拦,重点是核对 robots.txt、WAF/CDN、服务器状态码和日志:核心公开页是否允许它访问,返回的是否是真页面。检查通过只说明入口没有明显拦截,不等于 Claude 一定引用你。

很多外贸站做 Claude 可见性优化时,第一步就跑偏了。

他们会问:

“ClaudeBot 要不要放行?”

这个问题有价值,但不完整。

Anthropic 官方把 Claude 相关访问拆成几个不同机器人:ClaudeBotClaude-SearchBotClaude-User。这篇只检查 ClaudeBot 是否被拦截,因为标题锚定的是 ClaudeBot访问拦截检查

Claude-SearchBotClaude-User 只作为日志排除项:看到它们,不要当成 ClaudeBot 访问记录。

先列出要检查的URL

不要从日志里随便挑一个 URL。外贸站应该先列核心公开页面。

建议至少抽这些:

页面类型 示例 URL 为什么要查
首页 / 判断站点基础入口是否可访问
产品分类页 /products/ 代表供应范围和产品结构
产品详情页 /products/stainless-steel-valve/ 代表具体采购信息
FAQ 页 /faq/ 代表售前问题和可引用答案
案例页 /case-studies/chemical-plant-valve-project/ 代表业务证据
供应商介绍页 /about//factory/ 代表公司实体和能力
RFQ 说明页 /request-a-quote/ 代表转化入口说明

客户后台、报价单、合同、PI、发票、物流文件,不应该进入这张“公开可访问”清单。它们要用权限保护,不要靠 robots.txt。

第一步:检查robots.txt是否挡住ClaudeBot

先看真实线上文件。

curl -s https://www.example.com/robots.txt

如果有多个 host,要分别看:

curl -s https://example.com/robots.txt
curl -s https://www.example.com/robots.txt
curl -s https://en.example.com/robots.txt

Anthropic 官方要求如果要 opt out,需要在顶级目录的 robots.txt 中配置,并且每个要退出的子域名都要处理。
所以,多语言子域、资料子域、测试子域都要单独看。

如果你希望 ClaudeBot 能访问公开营销页,可以按目录写清楚:

User-agent: ClaudeBot
Allow: /products/
Allow: /case-studies/
Allow: /faq/
Allow: /about/
Disallow: /customer-portal/
Disallow: /downloads/private/

如果企业策略是不允许 ClaudeBot 抓取训练相关内容,也要明确写成:

User-agent: ClaudeBot
Disallow: /

这只是示例,不是通用模板。

它表达的是:ClaudeBot 的访问边界要单独决策,别用一条 User-agent: * 混过去。

第二步:别把anthropic-ai当成当前官方bot

日志里偶尔可能出现旧名称、第三方工具名称,或者你在别的文章里看到 anthropic-ai

当前 Anthropic 官方页面列出的 Claude 相关 user-agent 是:

  • ClaudeBot
  • Claude-SearchBot
  • Claude-User

所以自查时不要把 anthropic-ai 当作当前官方 bot 来配置。它只适合用来排查旧规则、旧文档或历史配置有没有残留。

如果要查配置残留,可以单独搜:

grep -RIn "anthropic-ai" /etc/nginx/ 2>/dev/null

日志报告只按官方 user-agent 分开记录:

命中项 处理方式
ClaudeBot 按训练相关抓取看
Claude-SearchBot 按搜索质量 / 搜索相关访问看
Claude-User 按用户触发访问看
anthropic-ai 不作为当前官方身份

第三步:用curl检查核心页面状态码

先检查不带特殊 user-agent 的真实访问状态。

URLS=(
  "https://www.example.com/"
  "https://www.example.com/products/"
  "https://www.example.com/products/stainless-steel-valve/"
  "https://www.example.com/faq/"
  "https://www.example.com/case-studies/chemical-plant-valve-project/"
)

for URL in "${URLS[@]}"; do
  echo "== $URL =="
  curl -sI -L "$URL" | head -n 8
done

你要先排除这些问题:

  • 返回 403
  • 返回 404
  • 返回 429
  • 返回 5xx
  • 被跳到首页;
  • 被跳到国家选择页;
  • 返回登录页;
  • 返回 WAF challenge 页面。

如果普通浏览器都不稳定,Claude 相关 bot 更难稳定访问。

第四步:模拟ClaudeBot User-Agent

User-Agent 可以伪造,所以这一步只能做初筛。
但它能快速发现服务器是否按字符串误拦截。

URL="https://www.example.com/products/stainless-steel-valve/"

curl -I -A "ClaudeBot" "$URL"

如果普通访问是 200,但模拟 ClaudeBot403,通常要查:

  • Cloudflare Bot Fight Mode;
  • WAF 自定义规则;
  • 安全插件;
  • Nginx / Apache user-agent 拦截;
  • 防火墙策略;
  • CDN 托管 robots.txt 规则。

如果 ClaudeBot 是你有意限制的,那不一定是问题。
如果你看到的是 Claude-SearchBotClaude-User 的访问结果,不能拿来判断 ClaudeBot 是否通过。

第五步:核对Anthropic官方bots.json

Anthropic 官方提供 bots JSON,可用于核对来源 IP。

curl -s https://claude.com/crawling/bots.json

如果服务器有 jq

curl -s https://claude.com/crawling/bots.json | jq '.prefixes[]'

注意:IP 核对是辅助识别真实来源,不要把它包装成万能验证。Anthropic 官方也提醒,单纯按 IP block 做 opt-out 可能不可靠,因为它可能影响 bot 读取 robots.txt;官方建议通过 robots.txt 表达 opt-out。

第六步:查access log里的真实访问

Nginx 日志先按 Claude 相关 user-agent 筛,但判断 ClaudeBot 时要单独拆出来。

grep -Ei 'ClaudeBot|Claude-SearchBot|Claude-User' /var/log/nginx/access.log \
  | awk -F'"' '{print $1, $2, $3, $6}' \
  | head -n 100

再单独看 ClaudeBot

grep -Ei 'ClaudeBot' /var/log/nginx/access.log | awk -F'"' '{print $1, $2, $3, $6}' | head -n 50

记录时不要只记“访问过”。要拆成:

字段 为什么看
来源 IP 可与官方 bots.json 做初步核对
请求 URL 是否访问核心产品页、FAQ页、案例页
状态码 2003014034044295xx 含义不同
User-Agent 确认本次记录是不是 ClaudeBot
时间 看是否和上线、改版、WAF 调整有关

看到访问,不等于被引用。
没看到访问,也不一定代表永久没机会。
但如果核心公开页面长期被 403 或挑战页挡住,准入层就有问题。

第七步:检查Cloudflare或WAF是否误伤

很多外贸站不是 robots.txt 挡住了 Claude,而是 WAF / CDN 挡住了。

如果你用 Cloudflare,要检查这些地方:

位置 要看什么
Bot Fight Mode / Super Bot Fight Mode 是否对所有 bot 做 challenge
WAF 自定义规则 是否按 user-agent 拦截 ClaudeBot
AI Crawl Control 是否 block 了 Anthropic / ClaudeBot
Managed robots.txt 是否自动插入了 AI crawler 规则
Security Events 是否能看到对应请求被 challenge / block

排查时不要只看 WordPress 后台。真正对外返回的结果要用 curl 和日志确认。

curl -s https://www.example.com/robots.txt
curl -I -A "ClaudeBot" https://www.example.com/products/stainless-steel-valve/

如果你发现返回的是 challenge HTML,而不是产品页,就说明页面内容没有被正常交付。

第八步:把结果整理成可复盘表

检查项 合格标准 结果
robots.txt 可访问 返回 200,内容为纯文本
子域名已核对 www、非 www、多语言子域分别检查
ClaudeBot 策略清楚 公开页是否允许,限制页是否明确
相邻 user-agent 已区分 不把 Claude-SearchBot / Claude-UserClaudeBot
核心产品页 返回 200,不是 challenge 页
FAQ / 案例页 返回 200
WAF / CDN 未误伤公开推广页
日志已抽查 bot、URL、状态码分开记录
IP JSON 已核对 来源 IP 做过初步比对
敏感资料 不靠 robots.txt 保护

这张表能让技术、SEO、销售统一判断:到底是页面内容问题,还是访问入口问题。

最后说清楚边界

Claude 相关访问拦截检查,只能回答:

  • 页面有没有被 robots.txt 挡住;
  • 服务器有没有返回错误状态;
  • WAF / CDN 有没有误伤;
  • 日志里是否有 ClaudeBot 访问;
  • 核心公开页是否能被正常读取。

它不能保证:

  • Claude 一定引用;
  • Claude 一定推荐;
  • Claude 搜索结果一定展示;
  • 排名一定提升;
  • 询盘一定增加。

外贸企业真正应该追求的是:该公开的产品页、FAQ、案例页、供应商介绍页能稳定访问;不该公开的客户资料、报价单、后台、订单页有真正权限保护。这样做,才是在业务边界内优化 Claude 可见性。

参考资料

内卷越来越激烈,再不做好独立站,就真的晚了!

添加微信咨询

扫描二维码添加微信客服

联系我们

  • 微信同号: 13077312120
  • Email: service@wphuo.com
  • 地址: 工业设计城智点汇7楼701 佛山市顺德区工业大道32号