从广告点进来的链接带着 utm 和 gclid,用户再点站内外链时这些参数整串出现在对方日志里。碰到这种情况,我一般先确认改动有没有真的生效。

原因不复杂,广告落地页的链接没有处理来源参数,外链也没加来源限制。浏览器默认会把完整地址带给下一个站点。

「广告参数泄露」相关的日志我一般连着看前后五分钟,单看一条报错经常判断不出是哪一步失败。改完顺手把文档补一句,省得下次自己重新推一遍。

<a href="https://other.example" rel="noopener noreferrer sponsored">
Referrer-Policy: strict-origin-when-cross-origin

监控和日志的时间要对上,时区不一致会多绕很大一圈。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。

动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。

具体做法是,站内外链统一加 noopener noreferrer;响应头设置来源策略,只发域名;落地页读完参数后清理地址栏;用开发者工具看外链请求头里的来源。

最后用这个标准收尾,跳转到外部站点时来源里只有域名,看不到 utm 和 gclid。

作者 9823189