Имам и тичам моя ec2 инстанция на a California
node Всичко работи, с изключение на моята проста форма на contact.php.
Аз прочетох много за ec2 е наистина трудно да изпратите имейли от. И това е, нищо не работи.
По този начин аз се натъкнах на SiftMailer и го инсталирах на екземпляр ec2, използващ Linux на Amazon yum install php-swift-Swift.noarch
Също така създадох идентификационните данни на ses в клъстера на Орегон (защото те нямат пощенска кутия в калифорнийския)
Сега за кода Много просто:
<?php
require "/usr/share/pear/Swift/swift_required.php";
$transport = new Swift_SmtpTransport(
"email-smtp.us-west-2.amazonaws.com", 465, "ssl", "KEY" ,"SECRET" );
// $transport->setUserName("")
//Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);
//Create the message
$message = Swift_Message::newInstance();
$message->setSubject("What up?");
$message->setFrom(array("mygmail@gmail.com"));
$message->setTo(array("mygmail@gmail.com"));
$message->setBody("
<p>
Dude, I"m <b>totally</b> sending you email via AWS.
</p>
", "text/html");
$mailer->send( $message );
?>
Сега грешката, която получавам, е
Fatal error: Uncaught exception "Swift_TransportException" with message "Expected response
code 250 but got code "530", with message "530 Authentication required "" in
/usr/share/pear/Swift/Swift/Transport/AbstractSmtpTransport.php:386 Stack trace: #0
/usr/share/pear/Swift/Swift/Transport/AbstractSmtpTransport.php(281):
Swift_Transport_AbstractSmtpTransport->_assertResponseCode("530 Authenticat...", Array) #1
/usr/share/pear/Swift/Swift/Transport/EsmtpTransport.php(245):
Swift_Transport_AbstractSmtpTransport->executeCommand("MAIL FROM: executeCommand("MAIL
FROM: _doMailFromCommand("mygmail@gmail...") #4
/usr/share/pear/Swift/Swift/Transport/AbstractSmtpTransport.php(444):
Swift_Transport_AbstractSmtpTransport->_doMailTransaction(Object(Swift_Message),
"mygmail @ gmail ...", Масив, в
/usr/share/pear/Swift/Swift/Transport/AbstractSmtpTransport.php на линия 386
Така че "mygmail" е моят действителен имейл, който просто поставям за моя пост. И "KEY" и "Secret" са тези, които имам, когато създадох пълномощията в IAM, които инструкциите на SES ми казаха да направя.
Също така потвърдих този имейл и на уеб интерфейса на SES.
Моля да ме уведомите, ако трябва да направя това по-ясно.
Отговори:
0 за отговор № 1Не сте сигурни дали сте решили това или не, но може би сте неправилно използвали идентификационните си данни, тъй като не сте посочили тази информация тук.
Предлагам да опитате да замените:
"KEY"
с вашия имейл адрес "mygmail@gmail.com"
"SECRET"
с вашия имейл адрес "your_gmail_password"
Такива настройки ми помогнаха на Yii2 с Swiftmailer.