电子邮件跟踪 - GMail

2022-08-30 22:20:21

我正在创建自己的电子邮件跟踪系统,用于电子邮件营销跟踪。我已经能够通过使用http引用来确定他们正在使用的每个人的电子邮件客户端,但由于某种原因,GMAIL根本不会发送HTTP_REFERRER!

因此,我正在尝试找到另一种方法来识别gmail何时从我的服务器请求透明图像。我得到以下标题:print_r($_SERVER);

DOCUMENT_ROOT  =  /usr/local/apache/htdocs

GATEWAY_INTERFACE  =  CGI/1.1

HTTP_ACCEPT  =  */*

HTTP_ACCEPT_CHARSET  =  ISO-8859-1,utf-8;q=0.7,*;q=0.3

HTTP_ACCEPT_ENCODING  =  gzip,deflate,sdch

HTTP_ACCEPT_LANGUAGE  =  en-GB,en-US;q=0.8,en;q=0.6

HTTP_CONNECTION  =  keep-alive

HTTP_COOKIE  =  __utmz=156230011.1290976484.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=156230011.422791272.1290976484.1293034866.1293050468.7

HTTP_HOST  =  xx.xxx.xx.xxx

HTTP_USER_AGENT  =  Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.237 Safari/534.10

PATH  =  /bin:/usr/bin

QUERY_STRING  =  i=MTA=

REDIRECT_STATUS  =  200

REMOTE_ADDR  =  xx.xxx.xx.xxx

REMOTE_PORT  =  61296

REQUEST_METHOD  =  GET

该列表中有什么用处吗?或者我还可以做其他事情来实际获取http引用站点,如果不是,其他ESP如何设法找到gmail是否用于查看电子邮件

顺便说一句,如果我们能阻止这是否合乎道德,我很感激,因为许多ESP已经这样做了,我只是不想为他们的服务付费,我想在内部这样做。

感谢大家的任何实施建议。

更新

只是以为我会更新这个问题,并根据赏金使它更清晰。

我想了解用户在发送到GMail收件箱时何时打开我的电子邮件。假设,我有通常的透明图像跟踪,用户不会阻止图像。

我想使用单个请求和在请求透明图像时获得的标题详细信息来执行此操作。


答案 1

您的图像是使用HTTP还是HTTPS请求的?

如果是这样,那就是问题所在。

HTTPS->HTTP 引用不会泄漏引用标头 (HTTP_REFERER)。

如果您在从 HTTPS 页面请求的电子邮件中嵌入 HTTP 托管图像,则它不会发送引荐来源网址。(但是,请求HTTPS的HTTP页面确实会发送引用程序)。解决方案是将图像嵌入为 HTTPS。我已经测试过了,果然,安全的HTTPS图像确实会发送推荐人。

默认情况下,Gmail可以阻止已加载图像上的引荐来源网址信息的一种方式是,如果他们使用大多数现代浏览器都支持引荐来源网址政策。(截至2011年,他们没有实施这样的政策。

请参阅以下使用请求的 HTTP 引用程序动态生成的嵌入式图像的屏幕截图:enter image description here


答案 2

使链接类似于 http://www.example.com/image.jpg?h=8dh38dj

image.jpg 是一个 PHP 文件,8dh38dj 是包含链接的电子邮件的哈希值。当用户请求文件时,您的PHP脚本将获得“8dh38dj”,在数据库中查找并找到匹配的电子邮件。解析域,即 example@gmail.com gmail.com,并且您知道它来自gmail。要使 jpg 文件作为 PHP 执行,请在 php 中使用 AddHandler


推荐