我正在尝试从我的laravel 5.1系统发送电子邮件。我可以从本地主机发送电子邮件,但无法从服务器发送。请参阅.env文件中的电子邮件配置设置
MAIL_DRIVER=smtp
MAIL_HOST= smtp.gmail.com
MAIL_PORT= 587
MAIL_USERNAME= username***@gmail.com
MAIL_PASSWORD= *********
MAIL_ENCRYPTION=tls
此配置仅适用于我的localhost。在服务器上我收到此错误,
Swift_TransportException in StreamBuffer.php line 268:
Connection could not be established with host smtp.gmail.com [Network is unreachable #101]
我也尝试将MAIL_PORT
从587
更改为465
,将MAIL_ENCRYPTION
从tls
更改为ssl
。但我也是同样的错误。我该如何解决这个问题?
答案 0 :(得分:13)
我使用代码在cpanel中解决了我的问题:
change MAIL_DRIVER=smtp to MAIL_DRIVER=sendmail in ".env" file
答案 1 :(得分:1)
答案 2 :(得分:1)
访问您的服务器并进行编辑 纳米/etc/csf/csf.conf
SMTP_ALLOWUSER =“ cpanel,yourusr”
答案 3 :(得分:1)
Localhost->正常工作
生产->无法使用
查看您的生产防火墙策略或托管服务提供商策略是否阻止了电子邮件端口(因为这些端口被大量垃圾邮件限制)
答案 4 :(得分:0)
1。)更改.env文件中的配置后清除服务器上的缓存。
php artisan cache:clear;
php artisan config:cache;
如果错误仍然存在
拒绝连接是一个非常明确且清晰的错误消息。这意味着无法建立套接字连接,因为远程端主动拒绝连接。
谷歌不太可能阻止连接。
您的网络托管服务提供商很可能具有阻止端口465上的传出连接的防火墙设置,或者他们阻止SMTP到Gmail。 465是安全SMTP的“错误”端口,虽然经常使用,但Gmail确实在那里收听。请尝试使用端口587。如果仍然拒绝连接,请致电主持人并询问他们的情况。
答案 5 :(得分:-1)
将“ .env”文件中的MAIL_DRIVER = smtp更改为MAIL_DRIVER = sendmail