我有:
Mail::send('emails.booking-confirmation', [
'name' => $name,
'email' => $email,
'tel' => $tel,
'msg' => $msg,
'date' => Carbon::parse($date)->format('l, jS of F, Y at H:ia'),
'service' => $q->service,
'duration' => $q->duration . ' minutes'
], function ($m) use ($name, $email) {
$m->from('myemail@ddress.co.uk', 'Subject');
$m->to($email, $name)->subject('Your Booking');
});
当使用AWS SES发送时,我得到:
Error executing "SendRawEmail" on "https://email.eu-west-1.amazonaws.com"; AWS HTTP error: Client error: `POST https://email.eu-west-1.amazonaws.com` resulted in a `400 Bad Request` response:
<ErrorResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
<Error>
<Type>Sender</Type>
<Code>MessageReje (truncated...)
MessageRejected (client): Email address is not verified. - <ErrorResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
<Error>
<Type>Sender</Type>
<Code>MessageRejected</Code>
<Message>Email address is not verified.</Message>
</Error>
<RequestId>8551cf11-f420-11e5-b4ac-bf30e6ff71ee</RequestId>
</ErrorResponse>
我的地址和域已验证。
如果我这样做:
...
], function ($m) use ($name, $email) {
$m->from('myemail@ddress.co.uk', 'Subject');
$m->to('myemail@ddress.co.uk', $name)->subject('Your Booking');
});
它工作得很好,但完全没有用。
我如何做到这一点,以便向填写我的表格的用户发送电子邮件?
它抱怨您的To: email
地址未经验证。看起来您处于SES Sandbox
模式。在您将SES帐户更改为production
帐户之前,您还必须验证您的Sender
电子邮件地址。
测试时,From
和To
都是您的电子邮件地址(已验证)。
发件人:验证亚马逊SES 中的电子邮件地址
在您的帐户退出亚马逊SES沙箱之前,您还必须验证除收件人之外的每个收件人的电子邮件地址由亚马逊SES邮箱模拟器提供。有关详细信息关于邮箱模拟器,请参阅测试亚马逊SES电子邮件发送。对于有关移出沙盒的详细信息,请参阅移出亚马逊SES沙盒。
搬出亚马逊SES沙盒