Отслеживание электронной почты - GMail
Я создаю свою собственную систему отслеживания электронной почты для отслеживания почтового маркетинга. Я смог определить каждого почтового клиента, которого они используют, с помощью ссылки 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 уже делают это, я просто не хочу платить за их обслуживание и хочу сделать это внутренне.
Спасибо всем за любые советы по внедрению.
Update
Просто подумал, что обновлю этот вопрос и проясню его в свете щедрости.
Я хотел бы узнать, когда пользователь открывает мою электронную почту при отправке в почтовый ящик GMail. Предположим, у меня есть обычное прозрачное отслеживание изображений, и пользователь не блокирует изображения.
Я хотел бы сделать это с помощью одного запроса и подробностей заголовка, которые я получаю при запросе прозрачного изображения.
2 ответа
Ваши изображения запрашиваются с помощью HTTP или HTTPS?
Если так, то это проблема.
HTTPS-> Рефералы HTTP не пропускают заголовок реферера (HTTP_REFERER).
Если вы встраиваете размещенное в HTTP изображение в электронное письмо, запрашиваемое со страницы HTTPS, оно не отправит реферера. (HTTP-страницы, запрашивающие HTTPS, однако, отправляют реферер.) Решение состоит в том, чтобы внедрить изображение как HTTPS. Я проверил это, и, конечно же, безопасные образы HTTPS действительно посылают Referrer.
Одним из способов, по которым Gmail может блокировать информацию о реферере для загруженных изображений по умолчанию, является использование политики реферера , который поддерживается в большинстве современных браузеров. (По состоянию на 2011 г. они не внедрили такую политику.)
Смотрите скриншот ниже встроенного изображения, которое динамически генерируется с помощью HTTP REFERER запроса:
Сделайте ссылку наподобие http://www.example.com/image.jpg. ? ч = 8dh38dj
image.jpg - это файл PHP, а 8dh38dj - это хеш электронной почты, в которую вы включили ссылку. Когда пользователь запрашивает файл, ваш PHP-скрипт получит «8dh38dj», найдите его в своей базе данных и найдите соответствующий Эл. адрес. Выполните синтаксический анализ домена, например gmail.com, по адресу [email protected], и вы узнаете, что он принадлежит gmail. Чтобы файлы jpg выполнялись как PHP, используйте AddHandler в php