2011-09-15 130 views
2

我想知道DoubleClick等公司如何在其圖片響應中包含一個cookie來跟蹤用戶。同樣,圖像(如智能像素)如何將信息發送回服務器?如何在HTTP響應中包含Cookie(例如圖片請求)?

請提供一個腳本例子,如果可能的(任何語言是好的)[注:如果這是解決所作所爲東西服務器端,請詳細說明如何做到這一點使用Apache來完成。

乾杯, 羅布

+1

是一個圖像從任何其他類型的資源的不同? –

+0

要打擊你的心更是:閱讀[永遠的cookie(http://samy.pl/evercookie/) –

回答

-1

要做到這一點在PHP中,你會使用setCookie功能。

<?php 
$value = 'something from somewhere'; 

setcookie("TestCookie", $value); 
setcookie("TestCookie", $value, time()+3600); /* expire in 1 hour */ 
setcookie("TestCookie", $value, time()+3600, "/~rasmus/", ".example.com", 1); 
?> 

該代碼取自上面引用的php文檔。基本上,這增加了Set-Cookie到的HttpResponse頭,如:Set-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1

http://en.wikipedia.org/wiki/List_of_HTTP_header_fields和搜索Set-Cookie

此外,在腳本語言,如PHP,請確保您設置的標題渲染任何內容之前。這是因爲HTTP頭是響應中發送的第一件事情,所以一旦你寫內容,頭應該已經寫好了。

PHP:setcookie DOC另一句名言:

像其他頭,餅乾必須在任何輸出之前,將您 腳本(這是協議限制)發送。這要求您在任何輸出之前將 調用放入此函數,包括 標記以及任何空格。

+0

這個答案將是一個PHP頁面,不是一個簡單的圖像請求 – rednoyz

+0

@rednoyz PHP的請求可以用圖片內容進行響應,但正常的響應是text/html。有關示例,請參見[將PHP頁面作爲圖像返回](http://stackoverflow.com/a/900228/590956)。 – Sam

0

他們如何包括餅乾嗎?配置服務器,可能通過腳本向響應發送cookie。圖像是http請求,遵循http協議,沒有什麼不可思議的。

「智能像素」傳達他們的信息通過瀏覽器必須發送到服務器,以加載圖像的要求簡單。有關用戶/瀏覽器的信息可以通過javascript收集並嵌入到網址中。

相關問題