我在發送郵件時遇到此錯誤。PHPMailer無法發送郵件 - 以下發件人地址失敗
Message could not be sent.Mailer Error: The following From address failed: [email protected] : MAIL FROM command failed,Temporary system failure. Please try again later. ,451,4.3.0SMTP server error: MAIL FROM command failed Detail: Temporary system failure. Please try again later. SMTP code: 451 Additional SMTP info: 4.3.0SMTP server error: MAIL FROM command failed Detail: Temporary system failure. Please try again later. SMTP code: 451 Additional SMTP info: 4.3.0
這是我的代碼:
require 'phpmailer/PHPMailerAutoload.php';
$html = "<b>Hello world!</b>";
$email = "[email protected]";
$mail = new PHPMailer;
$mail->isSMTP();
$mail->setFrom('[email protected]');
$mail->addAddress($email);
$mail->isHTML(true);
$mail->Subject = 'Sample Subject';
$mail->Body = $html;
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
echo 'Email sent';
}
我還試圖消除$mail->isSMTP();
和我收到回送消息Email sent
與問題是,當我檢查我的收件箱和垃圾郵件文件夾,因爲我把我的個人電子郵件作爲電子郵件的收件人,電子郵件不在那裏。這是服務器問題嗎?
我也檢查了/var/log/mail.err
,我可以看到一個錯誤日誌,說這個collect: Cannot write ./dfv4PAGY73013302 (bfcommit, uid=0, gid=119): No such file or directory
- 那是什麼?
我已經撞了我的頭2天了,但我不知道是什麼問題。我在我的服務器中安裝了一個新的LAMP堆棧,還配置了postfix(只是說這可能會幫助你得到一個想法)。
這似乎是什麼問題?
您的幫助將不勝感激!謝謝!
嗯......也可能你的SMTP服務r未正確配置。也許它不能寫入假脫機目錄中的文件... – axiac
@axiac如何在spool目錄中寫入文件?對於這個愚蠢的問題抱歉:\ – PinoyStackOverflower
SMTP服務器將它處理的電子郵件的內容保存到工作目錄中。看起來你不能在那個目錄下寫文件,因爲它不存在。此目錄的確切路徑是在SMTP服務器的配置中的某處指定的。我從來沒有配置過'postfix' :-( – axiac