3

我想统计从推荐网站访问我的网站的次数。我知道有很多程序,例如谷歌分析,但会告诉你我的 taffic 来自 www.facebook.com。我想检查流量是否来自我指定的某些特定网址,例如 www.facebook.com/myfanpage。

在我考虑 php 之前,我尝试了几种使用 javascript 的方法,但它们似乎并没有按照我想要的方式运行。对于我的 php 搜索,我只找到了这个函数。有任何想法吗 ?

$_SERVER['HTTP_REFERER']
4

4 回答 4

9

$_SERVER['HTTP_REFERER']会做你需要的。

if (strstr($_SERVER['HTTP_REFERER'], 'facebook.com') !== false) {
    // Facebook brought me to this page.
}

elseif (strstr($_SERVER['HTTP_REFERER'], 'google.com') !== false ) {
    // Google brought me to this page.
}
于 2012-08-10T03:35:31.857 回答
3

抱歉,我知道这已经晚了 6 个月,但如果 url 是http://mydomain.com/?p=facebook.com那么这也是真的吗?更好的方法是根据 / 分解引荐来源网址,然后提取第 4 部分,即

$refererUrl = $_SERVER['HTTP_REFERER'];
$Exploded_URL = explode("/",$refererUrl);
$urlToCheck = $Exploded_URL[3].'.'.$Exploded_URL[4];
if($urlToCheck == 'facebook.com'){
/* From Facebook */
} elseif ($urlToCheck == 'google.com'){
/* From Google */
}
于 2013-02-28T11:29:28.110 回答
1

$_SERVER['HTTP_REFERER']应包含用户从其访问您的页面的 URL。这不是一个函数。它只是一个值。因此,您可以将其用于此目的。

但是请注意,该值很容易被欺骗。(它取自 HTTP 请求标头,用户可以发送他们想要的任何内容。)如果您只是为了自己的兴趣或其他原因收集统计信息,它应该是可以接受的。但是,如果您尝试使用它来保护页面(例如,仅当访问者来自某个 URL 时才显示某些内容),请忘记它。

于 2012-08-10T03:33:31.060 回答
0

您将只能检查 HTTP 请求是否referer可以在 PHP 中使用HTTP_REFERER. 因此,它由推荐网站全权负责。

使用 PHP 获取原始 URL 引用?

上面的帖子也会对你有所帮助。

于 2012-08-10T03:34:41.983 回答