搜索全站
multilingual 2 分钟阅读

多语言自动化测试思路:语言切换、hreflang 与死链检查

多语言站上线/更新后用自动化脚本巡检:语言切换可用、hreflang 双向完整、各语言无死链、结构数据本语,给出可落地的测试脚本思路(curl/CI)。

U
UFO_PF 2016-03-03 · 阅读 2 分钟
多语 MULTILINGUAL
阅读提示
本文约 780 字,预计阅读 2 分钟。文中命令与配置均经过实测,可直接参考执行。

引言:改版后某语言死链一堆

多语言站改动多,手动测不过来。用自动化脚本定期巡检语言切换、hreflang、死链、结构数据,集成 CI 或定时任务,问题早发现。

原理分析:测什么

  1. 语言切换:每页各语言 URL 可访问(200)。
  2. hreflang:每页双向+自引用+x-default(见实现篇)。
  3. 死链:全语言 URL 状态码非 200/软 404。
  4. 结构数据:本语 inLanguage(见 Schema 篇)。

保姆级实操

巡检脚本(示意):

for url in $(cat all_urls.txt); do
  for lang in zh en de; do
    code=$(curl -s -o /dev/null -w '%{http_code}' "$url/$lang/")
    [ "$code" != "200" ] && echo "DEAD $url/$lang $code"
  done
  curl -s "$url/en/" | grep -q 'hreflang="en"' || echo "NO hreflang $url"
done

集成 GitHub Actions 定时跑。

常见坑

  1. 只测默认语,其他盲。
  2. hreflang 不自动验,错漏。
  3. 案例:某站 CI 定时巡检,一次改版发现德文 12 死链,上线前修。
  4. 软 404 不查,收录错。
  5. 不测结构数据,富媒体错。

总结

判断标准:切换/hreflang/死链/结构数据自动化巡检。行动清单:列检查项 → 写脚本 → 定时跑 → 告警 → 修。详见hreflang 常见错误与验证工具。

U
UFO_PF作者

专注 WordPress 生态的实战作者,内容以「可复制、可验证」为第一原则。

留下你的想法

邮箱地址不会被公开。带 * 的为必填项。