如果有人从Google访问我的网站,我怎么能找到?
<?php
if (isset($_COOKIE['source'])) {
$arr = explode("=",$_COOKIE['source']);
$_SESSION['source'] = $arr[1];
unset($_COOKIE['source']);
}
?>
这就是我获取源代码的方式,了解访问者在我的网站之前的位置,如果他在Google上搜索我的网页,我想设置$_SESSION['source']="google"
。
答案 0 :(得分:1)
if(strpos($_SERVER['HTTP_REFERER'], 'google'))
echo 'comes from google';
答案 1 :(得分:0)
尝试检查$ _SERVER ['HTTP_REFERER']。此全局变量应包含referer url。
答案 2 :(得分:0)
我就是这样做的。它解析给定的URL(如果有),然后删除所有不需要的信息,如Top-Level-Domain或第三级或更低级别的域,因此我们只剩下第二级域名(谷歌)。< / p>
function isRequestFromGoogle() {
if (!empty($_SERVER['HTTP_REFERER'])) {
$host = parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST);
if (!$host) {
return false; // no host found
}
// remove the TLD, like .com, .de etc.
$hostWithoutTld = mb_substr($_SERVER['HTTP_REFERER'], 0, mb_strrpos($_SERVER['HTTP_REFERER'], '.'));
// get only the second level domain name
// e.g. from news.google.de we already removed .de and now we remove news.
$domainName = mb_substr($hostWithoutTld, mb_strrpos($hostWithoutTld, '.') + 1);
if (mb_strtolower($domainName) == 'google') {
return true;
} else {
return false;
}
}
}