在 document.referrer
失效或不可靠的情况下,你可以考虑以下几种方法来追踪网站访问来源:
utm_source
, utm_medium
, utm_campaign
等),这些参数可以通过服务器端或客户端脚本捕获并记录。https://example.com/?utm_source=google&utm_medium=cpc&utm_campaign=summer_sale
document.referrer
可能失效,但服务器端的 HTTP Referer
头通常仍然有效。你可以在服务器端日志中捕获 Referer
头信息。Referer
头通常会记录访问来源。javascript
document.cookie = "source=google; path=/; max-age=2592000"; // 30天有效期
sessionStorage
或 localStorage
来存储来源信息。sessionStorage
在会话结束时失效,而 localStorage
则持久化存储。javascript
localStorage.setItem('source', 'google');
Referer
头信息。%{Referer}i
或 Nginx日志中的 $http_referer
。X-Forwarded-For
或 CF-Connecting-IP
,这些信息可以帮助你追踪来源。document.referrer
不可靠,你可以尝试通过其他方式捕获来源信息,例如通过 window.location.href
或 window.history
来获取当前页面的URL,并结合其他方法进行来源追踪。php
$source = $_GET['utm_source'];
if ($source) {
setcookie('source', $source, time() + 2592000, '/');
}
header('Location: /target-page');
每种方法都有其优缺点,选择哪种方法取决于你的具体需求和环境。通常,结合多种方法可以获得更准确的来源追踪结果。例如,使用URL参数结合服务器端日志分析,或者使用第三方分析工具结合Cookies。