我最近更新到 Laravel 9,現在我無法再發送電子郵件。在更新日誌中寫道,他們將郵件程式從 SwiftMailer 切換到了 Symfony,所以也許這就是問題的根源。 這是每當我嘗試發送郵件時收到的錯誤正文:
SymfonyComponentMailerExceptionTransportException: Unable to write bytes on the wire. in file C:OpenServerdomainsminecraftstoragevendorsymfonymailerTransportSmtpStreamAbstractStream.php on line 46
我按照文件配置了我的 .env 和 config/mail.php 檔案。我確信這一方面的一切都是正確的。對於 SMTP 伺服器,我使用 MailTrap,因此郵件配置是從那裡取得的。我花了兩天時間試圖解決這個問題,在互聯網上進行了搜索,但沒有成功。重新安裝 Composer 依賴項也沒有幫助。
下面是我的.env郵件設定:
MAIL_MAILER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=************** MAIL_PASSWORD=************** MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS="noreply@example.com" MAIL_FROM_NAME="${APP_NAME}"
我終於找到解決辦法了。問題是我的網路供應商以某種方式阻止了 smtp 連線。因此,當我從 Wifi 切換到行動數據時,它突然開始工作。希望這對遇到類似問題的其他人有所幫助。