我正在建立一個簡單的PHP跟蹤像素跟蹤腳本,以下是技術上的工作原理,但是當我看着Safari中的檢查員時,我得到以下警告(1by1.gif是一個42B gif):爲什麼此PHP跟蹤像素無法正常工作?
esource解釋爲文檔,但 與MIME類型圖像/ gif一起傳輸。
header("Content-type: image/gif");
header("Content-Length: 42");
echo file_get_contents("/path/to/1by1.gif");
// do tracking stuff below here
我看了其他跟蹤像素,他們都展現在檢查,如果他們是實際的圖像,即使使用php擴展。任何想法如何解決該警告?
編輯:
我試着做以下,我也得到了同樣的警告:在你的HTML源
header("Content-type: image/gif");
$img = imagecreatefromstring(file_get_contents("/path/to/1by1.gif"));
imagegif($img);
您正在使用哪個Web服務器? – webbiedave
Apache,儘管我也使用CloudFlare,並且標題返回爲:服務器:cloudflare-nginx。 –
爲了安全起見,你爲什麼不使用'filesize'而不是文字42?另外,我會用'readfile'替換'echo file_get_contents'。 –