Laravel 项目 - 托管在 Heroku - SendGrid SMTP 连接问题
Posted
技术标签:
【中文标题】Laravel 项目 - 托管在 Heroku - SendGrid SMTP 连接问题【英文标题】:Laravel Project - Hosted on Heroku - SendGrid SMTP connection issues 【发布时间】:2020-08-23 05:37:49 【问题描述】:我有一个 laravel 应用程序托管在 heroku 上,它使用 sendgrid 插件来实现 smtp 功能。在我的应用程序中,我有一个注册表单,一旦用户注册就会发送电子邮件通知,但每次尝试注册时都会收到这些错误:
(1/1) Swift_TransportException 无法与主机 smtp.sendgrid.net 建立连接 :stream_socket_client(): php_network_getaddresses: getaddrinfo failed: Name or service not known
我已经三次检查了我的邮件配置设置,我使用的邮件 smtp 设置是:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=secret
MAIL_PASSWORD=secret
MAIL_ENCRYPTION=tls
我已将这些添加到 Heroku 的 var 信息中,但仍然没有运气。
【问题讨论】:
【参考方案1】:尝试改变
MAIL_DRIVER=smtp
到
MAIL_DRIVER=sendmail
【讨论】:
您好,感谢您尝试了这个,我认为它工作了一秒钟,但现在我收到了这个错误:(1/1) ErrorException fwrite(): write of 348 bytes failed with errno=32 Broken pipe 尝试通过运行命令php artisan config:clear
清除配置
您好,我尝试使用 php artisan config:clear 然后将更改推送到 heroku,虽然我没有收到此错误,但我现在得到:(1/1) Swift_TransportException 预期响应代码 220 但得到了空响应
好的,看看这个***.com/questions/32693528/…我希望这会有所帮助
您好,感谢您的链接。我认为如果人们使用谷歌而不是sendgrid,信息会更加内联,这只是因为我在一年前使用sendgrid在heroku上托管了laravel应用程序并且当时工作正常,但由于某种原因再次托管时它不起作用。我的邮件配置设置是: MAIL_DRIVER=sendmail MAIL_HOST=smtp.sendgrid.net MAIL_PORT=587 MAIL_USERNAME=secret MAIL_PASSWORD=secret MAIL_ENCRYPTION=tls以上是关于Laravel 项目 - 托管在 Heroku - SendGrid SMTP 连接问题的主要内容,如果未能解决你的问题,请参考以下文章
如何让我在 Heroku 上的 Laravel 项目使用 Heroku Postgres?
Laravel 密码重置电子邮件未在 Heroku 上使用 gmail 发送