2017-09-04 151 views
1

我正確設置了環境變量。 還要正確設置''密鑰','祕密'和'區域',MAIL_USERNAMEMAIL_PASSWORDLaravel5.4在通過亞馬遜上的smtp發送郵件時出現'Swift_TransportException'錯誤

以下是laravel錯誤: Laravel Image

而下面是我.ENV文件:

MAIL_DRIVER=smtp 
MAIL_HOST=email-smtp.us-west-2.amazonaws.com 
MAIL_PORT=587 
MAIL_USERNAME= 'My user name' 
MAIL_PASSWORD= 'My password' 
MAIL_ENCRYPTION=tls 

而且下面是發送電子郵件代碼:

Mail::to('[email protected]')->send(new Product('sending content')); 

另外,我在亞馬遜上添加目標電子郵件地址。

請解釋爲什麼發生此錯誤。

謝謝。

+0

你是如何得到'MAIL_USERNAME'和'MAIL_PASSWORD'的? – helloV

+0

是的。我得到它們並正確設置。你能告訴我他們的方法嗎?然後我可以按照你的方式重新設置值。 –

+1

如果你不能告訴你如何獲得憑證,我怎麼知道你的設置是否配置正確? – helloV

回答

1

我剛剛解決了這個問題。包含郵件設置信息的mail.php發生錯誤。

如果你遇到了這個錯誤,請檢查以下項目:

  1. 入住.ENV和mail.php兩個變量。 不要重新定義在.env文件中定義的mail.php中的變量。
  2. 檢查您是否正確使用了env()功能。 我剛剛在env()函數中出錯。 您應該使用如下功能:

    'username'=> env('MAIL_USERNAME','your-username');

    第一個參數是鍵,下一個參數是默認值。

希望這能幫助你。

相關問題