无法与主机smtp一起建立连接Laravel电子邮件中网络无法访问#101错误

时间:2017-07-28 07:07:38

标签: php laravel email smtp laravel-5.1

我正在尝试从我的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_PORT587更改为465,将MAIL_ENCRYPTIONtls更改为ssl。但我也是同样的错误。我该如何解决这个问题?

6 个答案:

答案 0 :(得分:13)

我使用代码在cpanel中解决了我的问题:

change MAIL_DRIVER=smtp to MAIL_DRIVER=sendmail in ".env" file

答案 1 :(得分:1)

如果您的网站网址是http://yourdomain.com

您需要使用此端口587

或者您的网站URL为https://yourdomain.com

您需要使用此端口25

答案 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