Ich bin auf der Suche nach einer HTML-formatierten E-Mail von AWS SES-Dienst zu senden.Raw-E-Mail über SES mit dem AWS senden sdk php
Ich bin mit PHP SDK e ist dies der Code des Controllers, die ich benutze:
....
$to = "[email protected]";
// You'll need to be able to send as this address in SES
$from = "[email protected]";
// $html = file_get_contents("../resources/email/activation/activation.html");
// $html = sprintf($html);
// $html = mb_convert_encoding($html, "HTML-ENTITIES", "UTF-8");
// our html message
$html = <<<EOF
<!DOCTYPE html>
<html>
<body>
<h1>This text should be large, because it is formatted as a header in HTML.</h1>
<p>Here is a formatted link: <a href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Amazon SES Developer Guide</a>.</p>
</body>
</html>
EOF;
// our attachments - these are relative to the current file
$attachments = array();
$mailer = new EmailServiceProvider();
/** @var boolean|string $messageId Identify of the email sended or false if an expetion is thrown */
$messageId = $mailer->send($to, $subject, $from, $html, $attachments);
....
Der Code der Emailservice ist: http://pastebin.com/zhKDEsvp
Wenn ich diesen Code verwenden die E-Mail ist nicht HTML formatiert Dies ist, was kommen:
Subject: Registrazione servizio
MIME-Version: 1.0
Content-type: multipart/alternative; boundary="207873e15f9df22df8212df410ead01cfe1b9f7c"
--207873e15f9df22df8212df410ead01cfe1b9f7c
Content-Type: text/html; charset=iso-8859-1
<!DOCTYPE html>
<html>
<body>
<h1>This text should be large, because it is formatted as a header in HTML.</h1>
<p>Here is a formatted link: <a href="http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Amazon SES Developer Guide</a>.</p>
</body>
</html>
--207873e15f9df22df8212df410ead01cfe1b9f7c--
Andere Antworten sagen base_64_encode hinzufügen hier:
$args = array(
'Source' => $from,
'Destinations' => array($to),
'RawMessage' => array(
'Data' => base_64_encode($rawEmail)
)
);
Aber wenn ich es verwenden, ist die E-Mail nicht senden und gibt einen Lieferstatus:
An error occurred while trying to deliver the mail to the following recipients:
[email protected]
Action: failed
Final-Recipient: rfc822; [email protected]
Diagnostic-Code: smtp; 550-5.7.1 [54.240.4.25 11] Our system has detected that this message is not
550-5.7.1 RFC 5322 compliant:
550-5.7.1 'From' header is missing.
550-5.7.1 To reduce the amount of spam sent to Gmail, this message has been
550-5.7.1 blocked. Please visit
550-5.7.1 https://support.google.com/mail/?p=RfcMessageNonCompliant
550 5.7.1 and review RFC 5322 specifications for more information. ud19si31267939wjb.199 - gsmtp
Status: 5.7.1
---------- Messaggio inoltrato ----------
From:
To:
Cc:
Date:
Subject:
ClN1YmplY3Q6IFJlZ2lzdHJhemlvbmUgc2Vydml6aW8gSG9wc3RvawpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LXR5cGU6IG11bHRpcGFydC9hbHRlcm5hdGl2ZTsgYm91bmRhcnk9IjkzY2E3ZTcwZDk2OWNkMGU5NzEwNzBiMGQwMjllNzUwY2E1N2VjNzciCgotLTkzY2E3ZTcwZDk2OWNkMGU5NzEwNzBiMGQwMjllNzUwY2E1N2VjNzcKQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9aXNvLTg4NTktMQoKPCFET0NUWVBFIGh0bWw+CjxodG1sPgo8Ym9keT4KPGgxPlRoaXMgdGV4dCBzaG91bGQgYmUgbGFyZ2UsIGJlY2F1c2UgaXQgaXMgZm9ybWF0dGVkIGFzIGEgaGVhZGVyIGluIEhUTUwuPC9oMT4KPHA+SGVyZSBpcyBhIGZvcm1hdHRlZCBsaW5rOiA8YSBocmVmPSJodHRwOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zZXMvbGF0ZXN0L0RldmVsb3Blckd1aWRlL1dlbGNvbWUuaHRtbCI+QW1hem9uIFNFUyBEZXZlbG9wZXIgR3VpZGU8L2E+LjwvcD4KPC9ib2R5Pgo8L2h0bWw+CgotLTkzY2E3ZTcwZDk2OWNkMGU5NzEwNzBiMGQwMjllNzUwY2E1N2VjNzctLQo=
Message-ID: <[email protected]west-1.amazonses.com>
From: [email protected]
Date: Mon, 29 Aug 2016 10:05:48 +0000
X-SES-Outgoing: 2016.08.29-54.240.4.25
Feedback-ID: 1.eu-west-1.sSCOXf1mGsy1MFXDAp1+U0vN705joaXLM/BN/BVnYzE=:AmazonSES
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple;
s=ihchhvubuqgjsxyuhssfvqohv7z3u4hn; d=amazonses.com; t=1472465148;
h=Message-ID:From:Date:Feedback-ID;
bh=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN/XKdLCPjaYaY=;
b=B+e/8N2Ko/nEtVP+Wj8zM9q4Cm1Zn6+UDn6VlIp7s5ncZ9YsuAI0O7Q+Qnxy2BZL
Ek3HXFc+43z0H94PZQ8B0jCKFMu3T9q1Cv2mn+WtJsSYTZGvNqvlsyYhERbPBPbAWfw
cw48LWRnyQO66q5tOt1wW8fUTlFVFqCEE9yiE2hQ=
Irgendeine Idee?
Vielen Dank für die Hilfe,
Paolo