簡體   English   中英

Laravel 郵件陷阱在本地主機上不起作用

[英]Laravel mailtrap not working on localhost

我有一個 Laravel 7.0 項目,當我嘗試將 email 發送到 mailtrap 時,它給了我以下錯誤。

Swift_TransportException 不支持的 sendmail 命令標志 []。 必須是“-bs”或“-t”之一,但可以包含其他標志。

我在 my.env 文件中有以下內容

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=MY_USERNAME
MAIL_PASSWORD=MY_PASSWORD
MAIL_FROM_ADDRESS=from@example.com
MAIL_FROM_NAME=Example
MAIL_ENCRYPTION=tls

還嘗試清除配置緩存,但它不起作用。

php artisan config:cache

請務必重新啟動隊列並再次運行工作:

php artisan queue:restart

php artisan queue:work

來自文檔:由於隊列工作人員是長期存在的進程,因此如果不重新啟動,他們不會注意到代碼的更改。 因此,使用隊列工作者部署應用程序的最簡單方法是在部署過程中重新啟動工作者。

確保在config/mail.php中有命令標志

'sendmail' => [
   'transport' => 'sendmail',
   'path' => '/usr/sbin/sendmail -bs', // <-- Here
],

正如laravel/laravel存儲庫中定義那樣

我有同樣的問題,如果您使用的是 gmail,請嘗試這個,同時添加MAIL_FROM_ADDRESS

MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=********@gmail.com
MAIL_PASSWORD=********
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=*********gmail.com
MAIL_FROM_NAME="${APP_NAME}"

就我而言

php artisan config:clear

解決了這個問題。

暫無
暫無

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

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