簡體   English   中英

xampp本地主機中的Swiftmailer不發送電子郵件(進行了大量研究)

[英]Swiftmailer in xampp localhost doesnot send e-mail (have done a lot of research)

因此,我花了幾天時間嘗試通過php使用swiftmailer發送電子郵件,並且我使用的是localhost xampp服務器v3.2.1,其PHP版本是5.4.31,而我的swiftmailer是v5.3

這是PHP文件:

require_once 'lib/swift_required.php';
$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com',465,'ssl')
->setUsername('username@gmail.com')
->setPassword('password');

$mailer = Swift_Mailer::newInstance($transport);

$message = Swift_Message::newInstance('Wonderful Subject')
->setFrom(array('username@gmail.com'))
->setTo(array('recipient@gmail.com'))
->setBody('Hello World')
;

$result = $mailer->send($message);
if (!$mailer->send($message,$failures)) {
  echo "Failures:";
  print_r($failures);
} else {
  echo "sent";
}

該頁面僅返回空白,沒有發送或接收任何電子郵件。請先確定是否應配置任何內容,否則該代碼是否丟失了重要的一行代碼或其他內容。

先感謝您。

我一直在嘗試,一旦在錯誤日志中輸入了以下內容:

[15-Oct-2014 16:33:49 Europe/Berlin] PHP Fatal error:  Uncaught exception 'Swift_TransportException' with message 'Expected response code 250 but got code "535", with message "535-5.7.8 Username and Password not accepted. Learn more at

535 5.7.8 http://support.google.com/mail/bin/answer.py?answer=14257 fn2sm17247597pdb.75 - gsmtp

"' in C:\xampp\htdocs\1\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\AbstractSmtpTransport.php:386
Stack trace:
#0 C:\xampp\htdocs\1\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\AbstractSmtpTransport.php(281): Swift_Transport_AbstractSmtpTransport->_assertResponseCode('535-5.7.8 Usern...', Array)
#1 C:\xampp\htdocs\1\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\EsmtpTransport.php(245): Swift_Transport_AbstractSmtpTransport->executeCommand('RSET\r\n', Array, Array)
#2 C:\xampp\htdocs\1\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\Esmtp\Auth\XOAuth2Authenticator.php(56): Swift_Transport_EsmtpTransport->executeCommand('RSET\r\n', Array)
#3 C:\xampp\htdocs\1\vendor\swiftmailer\swiftma in C:\xampp\htdocs\1\vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport\AbstractSmtpTransport.php on line 386

它終於設法發送了電子郵件,我要做的就是更改我的gmail帳戶中的安全設置並禁用了安全保護,現在它可以完美地發送電子郵件了

嘗試像這樣設置運輸車:

$transport = Swift_SmtpTransport::newInstance('ssl://smtp.gmail.com', 465);

您還可以檢查異常:

try {
    $mailer = Swift_Mailer::newInstance($transport);
} catch(Swift_TransportException $exception) {
    var_dump($exception);
}

“ 535-5.7.8用戶名和密碼不被接受。” 表示不允許第三方訪問您的帳戶。 您需要通過在以下位置更新您的Google帳戶來授予他們對第三者的訪問權限:

https://myaccount.google.com/

在“登錄”下找到“允許安全性較低的應用訪問”短語,並將其更改為“允許”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM