Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 无法与主机smtp.sendgrid.net建立连接:流\u套接字\u客户端():无法连接到tcp://smtp.sendgrid.net:465_Laravel_Laravel 5_Sendgrid - Fatal编程技术网

Laravel 无法与主机smtp.sendgrid.net建立连接:流\u套接字\u客户端():无法连接到tcp://smtp.sendgrid.net:465

Laravel 无法与主机smtp.sendgrid.net建立连接:流\u套接字\u客户端():无法连接到tcp://smtp.sendgrid.net:465,laravel,laravel-5,sendgrid,Laravel,Laravel 5,Sendgrid,我正在尝试使用Laravel中的sendgrid发送邮件,但它在localserver上工作,但当我在服务器上托管它时,它会给我以下错误消息: .env文件中的我的邮件设置: MAIL_DRIVER=smtp MAIL_HOST=smtp.sendgrid.net MAIL_PORT=587 MAIL_USERNAME=myusername MAIL_PASSWORD=XXX MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=info@xyz.com MAIL_FRO

我正在尝试使用Laravel中的sendgrid发送邮件,但它在localserver上工作,但当我在服务器上托管它时,它会给我以下错误消息:

.env文件中的我的邮件设置:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=myusername
MAIL_PASSWORD=XXX
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=info@xyz.com
MAIL_FROM_NAME=xyz

如果您说它可以在本地工作,但不能在生产服务器上工作,请在您的web主机服务器上尝试使用
php artisan config:cache
。确保正确加载了ENV配置(如果您的主机不支持SSH连接,则需要手动将配置从ENV更新到
/app/config/*
文件中


如果问题仍然存在,则只有两种可能性:

  • 确保您的web主机允许传出SMTP连接
  • 确保sendgrid.net未禁止您的web主机传出SMTP IP地址
  • 对于laravel>=7 您将得到以下错误:

    无法与主机smtp.sendgrid.net建立连接:流\u套接字\u客户端():无法连接到tcp://smtp.sendgrid.net:587 (连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机没有响应

    只需更新
    .env
    文件即可 发件人:

    致:

    然后运行此命令以确保.env更改与代码同步

    php artisan config:cache
    

    获取相同的。在本地工作。你明白了吗?@trainoasis:在我的情况下,这是来自发送网格的问题,对我来说,这是共享主机阻止外部smtp连接。他们为我们的帐户启用了它们-但如果他们没有启用,我会使用API方法。
    MAIL_MAILER=sendMail
    MAIL_DRIVER=sendMail
    MAIL_HOST=smtp.sendgrid.net
    MAIL_PORT=587
    MAIL_USERNAME=apikey
    MAIL_PASSWORD=your_sendgrid_api_key
    MAIL_ENCRYPTION=tls
    MAIL_FROM_NAME="Your Sender Name"
    MAIL_FROM_ADDRESS=info@example.com
    
    php artisan config:cache