0

curl追踪重定向链路检查UTM参数:5步快速定位流量追踪失效原因

2026.06.01 | youres | 31次围观

用curl追踪重定向链路、检查UTM参数是否保留,是排查流量追踪失效的必备技能。本文用5个步骤教你快速定位问题。

为什么需要追踪重定向链路

营销链接从点击到落地页,往往经过多次跳转:广告平台→短链服务→CDN→HTTP转HTTPS→最终页面。任何一环丢失UTM参数,Google Analytics就无法正确归因流量来源。

常见场景:

  • 短链服务剥离了查询参数
  • HTTP强制跳转HTTPS时参数丢失
  • CDN层重定向未保留查询字符串
  • 服务器配置错误导致参数被清空

第一步:用curl查看完整重定向链路

curl的-L参数会自动跟随重定向,配合-v参数可以看到每次跳转的详细信息:

curl -L -v "https://example.com/link?utm_source=google&utm_medium=cpc"

输出中关注这些关键信息:

  • < HTTP/1.1 301302——跳转状态码
  • < Location:——跳转目标URL
  • 目标URL中是否还包含utm_source等参数

第二步:只查看响应头不下载内容

-I参数只获取响应头,适合快速检查第一跳:

curl -I "https://example.com/link?utm_source=google&utm_medium=cpc"

注意:-I发送的是HEAD请求,某些服务器对HEAD和GET的响应可能不同。如果怀疑有差异,用-i代替:

curl -i "https://example.com/link?utm_source=google&utm_medium=cpc"

第三步:用-w参数输出重定向详情

curl的-w参数可以格式化输出,提取重定向次数和最终URL:

curl -L -s -o /dev/null -w "重定向次数: %{num_redirects}\n最终URL: %{url_effective}\n" "https://example.com/link?utm_source=google"

输出示例:

重定向次数: 3
最终URL: https://www.example.com/page

如果最终URL中没有UTM参数,说明某次跳转把参数弄丢了。

第四步:逐跳追踪找出参数丢失位置

--max-redirs 0禁止跟随重定向,手动逐跳检查:

# 检查第一跳
curl -I --max-redirs 0 "https://short.link/abc?utm_source=google"
# 查看Location头的值

# 如果Location包含参数,继续检查下一跳
curl -I --max-redirs 0 "https://cdn.example.com/redirect?utm_source=google"

逐跳追踪直到发现哪一跳的Location头丢失了UTM参数。

第五步:用脚本自动化检查

写个简单脚本批量检查多个链接:

#!/bin/bash
urls=(
  "https://link1.com?utm_source=google"
  "https://link2.com?utm_source=facebook"
)

for url in "${urls[@]}"; do
  echo "=== 检查: $url ==="
  final=$(curl -L -s -o /dev/null -w "%{url_effective}" "$url")
  if [[ $final == *"utm_"* ]]; then
    echo "✓ UTM参数保留: $final"
  else
    echo "✗ UTM参数丢失: $final"
  fi
done

常见问题排查

短链服务剥离参数

某些短链服务默认不传递查询参数。解决方案:更换短链服务,或联系服务商开启参数传递。

HTTP跳HTTPS参数丢失

Nginx配置return 301 https://$host$uri会丢失参数,应改为return 301 https://$host$request_uri

CDN层重定向问题

Cloudflare等CDN的"Always Use HTTPS"功能可能剥离参数。检查CDN的重定向规则配置。

总结

用curl追踪重定向链路的5个步骤:

  1. -L -v查看完整跳转过程
  2. -I-i只看响应头
  3. -w输出重定向统计
  4. 逐跳追踪定位问题环节
  5. 用脚本批量检查

掌握这套方法,流量追踪失效问题一查一个准。

相关文章

版权声明

本文仅代表个人观点。
本文系AI辅助作者原创,未经许可,转载请保留原文链接。

发表评论