Php Laravel邮件异常超时错误

Php Laravel邮件异常超时错误,php,laravel,laravel-5,swiftmailer,php-7,Php,Laravel,Laravel 5,Swiftmailer,Php 7,我有一些问题已经很久了 我的应用程序正在向客户发送邮件。 在过去的几个月里,我已将此应用程序迁移到Laravel(目前为5.4版本)。 我多次收到错误信息: Swift_TransportException in AbstractSmtpTransport.php line 404: Connection to my-smtp.company.com:25 Timed Out 问题是我无法清除此错误消息。 大约10%的情况下会发生这种情况,或者排队任务和实时发送的邮件。 奇怪的是,这些邮件实际

我有一些问题已经很久了

我的应用程序正在向客户发送邮件。
在过去的几个月里,我已将此应用程序迁移到Laravel(目前为5.4版本)。
我多次收到错误信息:

Swift_TransportException in AbstractSmtpTransport.php line 404:
Connection to my-smtp.company.com:25 Timed Out
问题是我无法清除此错误消息。
大约10%的情况下会发生这种情况,或者排队任务和实时发送的邮件。
奇怪的是,这些邮件实际上是发送出去的,但还是出现了错误

我正在使用Windows server,并以这种方式运行listener的排队邮件:

D:\php-7.1.1-x64\php.exe D:\wwwroot\myapp\artisan queue:listen --timeout=60 --tries=1
我做了一些测试,看起来当抛出错误时,总是在启动队列作业或在浏览器中执行代码后33-36秒之后

将最大执行时间更改为60秒,但这没有帮助


有人能帮我吗?

看起来像是重复的问题:

根据它的回答:

在根项目下打开.env文件。在其中编辑以下内容:

邮件驱动程序=smtp

邮箱用户名=youremail@host.com

MAIL\u PASSWORD=您的密码

MAIL_HOST=smtp.gmail.com

邮件端口=587


我也有同样的问题,我的应用程序运行在Laravel 6.0上

我的解决方案:

1) 创建自定义邮件服务提供程序

2) 使用快速传输方法“设置超时”


可能是重复的不,不是。在我的情况下,它工作正常,但在成功发送邮件时出现超时错误。请尝试以下解决方案:我的连接没有问题。这不是我在Laravel的第一个应用程序。我可以成功连接,并且已经发送了数百封邮件。我有一个随机超时错误的问题。看起来它以某种方式连接到swiftmailer,而swiftmailer并没有收到服务器的响应。也许有可能以某种方式改变超时…同样的问题,我也面临着与Laravel5.6。
<?php

namespace App\Providers;

use Illuminate\Mail\MailServiceProvider as MailProvider;
use Illuminate\Mail\TransportManager;

class MailServiceProvider extends MailProvider
{
    /**
     * Register the Swift Transport instance.
     *
     * @return void
     */
    protected function registerSwiftTransport()
    {
        $this->app->singleton('swift.transport', function ($app) {
            $transport = new TransportManager($app);
            $transport->setTimeout(config('mail.connection_timeout'));
            return $transport;
        });
    }

}
'provider' => [
...
// Illuminate\Mail\MailServiceProvider::class,
App\Providers\MailServiceProvider::class,
...
],