我使用PHPMailer的發送帳戶驗證郵件,我使用AWS EC2實例然而,郵件是在本地主機工作罰款,但是當我上傳這對服務器電子郵件是不是第一次去, ,我用SendGrid憑證發送電子郵件,失敗,再嘗試Gmail的SMTP,失敗的地方,我讀了EC2不能發送電子郵件,然後,我創建SES也,還不能發送。的PHPMailer不能發送與EC2發送電子郵件
在網上搜索,ABT上,但沒有答案在本地主機固定我的問題,
,在可以發送電子郵件使用相同的代碼,並與SendGrid的Gmail憑證,爲什麼我不能發送與服務器?
我的PHP郵件代碼:
$sub = "Thankyou For registration! Confirm Your mail to Login";
$mailBody = "<h1>You are successfully registered<br />Visit site to login</h1>";
require 'mailer/PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = "tls://email-smtp.us-east-1.amazonaws.com"; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = "smtp_username"; // SMTP username
$mail->Password = "smtp_password"; // SMTP password
// $mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to
$mail->setFrom("[email protected]", "SMTP_REPLAY_NAME");
$mail->addReplyTo("[email protected]", "SMTP_REPLAY_NAME");
$mail->addAddress("[email protected]"); // Add a recipient
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $sub;
$mail->Body = $mailBody;
if(!$mail->send()) {
echo 'Message could not be sent.';
} else {
echo 'Message has been sent';
}
它顯示消息已發送,但我不能接收電子郵件,在郵件夾也查了,沒有郵件的線索!
即使我也有openSSL證書!打開SMTP端口的入站和出站安全組 ec2,一切工作正常,但PHPMailer!
AWS當前遇到服務中斷:https://status.aws.amazon.com/ –
現在亞洲地區服務器已啓動,並且我正在使用SendGrid作爲SMPT(現在),而不是S3 –
謝謝我做過調試和找到答案[這裏](https://gistpages.com/posts/phpmailer_smtp_error_failed_to_connect_to_server_permission_denied_13_fix) –