Während ich nicht genau herausgefunden habe, warum die einfache PHP-Datei das enthaltene Bild nicht erzeugte, gibt es hier eine weitere sehr komplizierte Möglichkeit, eine Bilddatei zu erzeugen, die nicht von meinem eigenen PHP 5.4.30 Webserver abgelehnt wurde.
Hier ist der Code, den ich in einen Index eingegeben habe.PHP-Datei innerhalb eines/email_image/Unterverzeichnis:
<?php
$message_id = $_REQUEST['message_id'];
$graphic_http = 'http://mywebsite.com/email_image/message_open_tracking.gif';
$filesize = filesize('message_open_tracking.gif');
header('Pragma: public');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Cache-Control: private',false);
header('Content-Disposition: attachment; filename="a_unique_image_name_' . $message_id . '.gif"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.$filesize);
readfile($graphic_http);
exit;
?>
Für die Bilddateinamen, habe ich folgendes:
http://mywebsite.com/email_image/?message_id=12345
Im email_image Ordner ist auch ein leeres 1x1 gif Bild mit dem Namen "message_open_tracking.gif" .
Die Datei index.php kann auch überarbeitet werden, um die message_id zu verwenden, um diese Nachricht als gelesen zu markieren. Wenn andere Variablen in der Querystring enthalten sind, wie die E-Mail-Adresse des Empfängers, können diese Werte auch innerhalb dieser index.php-Datei verwendet werden.
Vielen Dank an Bennett Stein für den folgenden Artikel: http://www.phpdevtips.com/2013/06/email-open-tracking-with-php-and-mysql/
Wie Sie sagten, es ist nicht sehr zuverlässig. Auch das ist subversiv. Ich würde E-Mails nicht trauen, dass solche Tricks mich verfolgen. –