我想讓Swiftmailer工作,但不斷收到「收件人拒絕」的消息。
什麼導致「收件人拒絕」迴應?這是來自gmail服務器的響應(gmail感覺這是垃圾郵件)?有沒有辦法解決這個問題?否則,我將放棄Swiftmailer並嘗試PHPMailer。我以前在PEAR包裝方面取得了成功,但厭倦了配置,並且首先嚐試了Swiftmailer ......這不應該是這個難題嗎?
Swiftmailer錯誤:收件人被拒絕
My Configuration:
- PHP 5.5.6
- Swiftmailer 5.0.3 (with Logger Plugin)
- Hosting by GoDaddy (yeah...I know)Goal: Use Swiftmailer to send SMTP message from [email protected] to [email protected]
(obviously the email addresses are placeholders for actual addresses)
這裏是PHP代碼:(同例子Swiftmailer documentation)
<?php
require_once 'lib/swift_required.php';
$transport = Swift_SmtpTransport::newInstance('smtp.mydomain.org', 25)
->setUsername('[email protected]')
->setPassword('mypassword')
;
$mailer = Swift_Mailer::newInstance($transport);
$logger = new Swift_Plugins_Loggers_EchoLogger();
$mailer->registerPlugin(new Swift_Plugins_LoggerPlugin($logger));
$message = Swift_Message::newInstance('Wonderful Subject')
->setFrom(array('[email protected]' => 'admin'))
->setTo(array('[email protected]' => 'recipient'))
->setBody('Here is the message itself')
;
$result = $mailer->send($message);
echo $logger->dump();
?>
下面是相關記錄信息:
...
++ Swift_SmtpTransport started
...
>> RCPT TO: <[email protected]>
<< 550 5.1.1 <[email protected]> recipient rejected
!! Expected response code 250/251/252 but got code "550", with message "550 5.1.1 <[email protected]> recipient rejected "
>> RSET
<< 250 2.0.0 OK
++ Stopping Swift_SmtpTransport
>> QUIT
只是爲了增加黑名單的可能性:gmail只使用垃圾郵件黑名單,除非最近發生了變化。任何其他列表不應影響您的交付能力。但是,從第一手來講,這不是一個黑名單問題 - 他們發佈了針對該事件的特定代碼(5.7.1)。儘管我提出了你的回答,但是這裏所說的一切都是現貨。 – skrilled
我發送給我的Gmail帳戶是我自己的Gmail帳戶,所以我知道它存在,未滿,未被阻止,並且沒有過濾器。這導致我認爲Gmail會考慮垃圾郵件。這看起來很奇怪,因爲我使用了最基本的Swiftmailer示例,並且它被最受歡迎的電子郵件服務之一阻止了。如果是這樣的話,這對Swiftmailer來說並不好。 – Sparebrain
後續工作:我可以使用郵件工具發送郵件。我懷疑Swiftmailer存在問題。這對其他人來說很容易使用他們自己的Gmail地址進行復制/驗證。如果Gmail阻塞,這應該是一個更常見的報告問題。我懷疑這是我的Swiftmailer設置的其他內容? – Sparebrain