簡體   English   中英

$ _SERVER ['HTTP_REFERER']顯示當前頁面

[英]$_SERVER['HTTP_REFERER'] shows current page

我有一個跟蹤腳本,可用於將分析數據保存到我們的公司數據庫中。 我們有很多網站(大約2000個域)和PPC廣告系列,而我使用的腳本效果很好。

我知道$_SERVER['HTTP_REFERER']並非100%可靠,可以是空的也可以是欺騙的,無論如何,這只是我們獲得的潛在客戶的一小部分(我在跟蹤腳本中考慮了這一點)。

問題是,盡管如果我在受影響的頁面上回顯我的$_SERVER['HTTP_REFERER'] var總是變空,但它會作為當前頁面URL傳遞給跟蹤腳本(通過$_SESSION var)。 就像(注意“好像”,我知道不是這樣)一樣,PHP正在用$_SERVER['REQUEST_URI']代替$_SERVER['HTTP_REFERER'] 這是從登錄頁面:

$_SESSION['keywords'] = $_SERVER['HTTP_REFERER'];
require_once 'tracking.php';
$raw_query = $_SESSION['keywords'];
 $key_browser = getKeywords($raw_query);
 $keywords = $key_browser['keywords'];
 $referer = $key_browser['referer'];
 $user_agent = getBrowserOs($_SERVER['HTTP_USER_AGENT']);
 $br = $user_agent['browser'];
 $os = $user_agent['os'];

跟蹤腳本無關緊要,因為我傳遞給它的變量沒有改變。

如果您使用HTML標簽(如<script src="mytracking.php"></script>加載腳本,則<script src="mytracking.php"></script>將與request_uri相同,因為request_uri是請求腳本的腳本。

如果單擊鏈接,唯一獲得用戶來源的引薦來源的腳本是響應瀏覽器請求的腳本。 通過HTML標記加載的所有資源都將當前頁面作為引薦來源網址。 順便說一下,通常將其用作防止圖像和其他資源熱鏈接的保護措施。

好吧,我沒有找到合適的解決方案,所以我選擇使用一個隱藏字段,其值由javascript的document.referrer屬性填充,然后將其簡單地傳遞給跟蹤腳本。 絕對可以,盡管我對找不到更好的解決方案感到不滿意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM