laravel 8 返回到 tcp://mail.infomaniak.com:465 的连接超时

php*_*vel 3 php swiftmailer laravel laravel-8

我是 Laravel 新手,无法使用服务器发送邮件。下面给出了我的 env 文件和 mail.php 文件

.env

MAIL_MAILER=smtp
MAIL_HOST=mail.infomaniak.com
MAIL_PORT=465
MAIL_USERNAME=***.com
MAIL_PASSWORD=***
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=***.com
MAIL_FROM_NAME="${APP_NAME}"
Run Code Online (Sandbox Code Playgroud)

配置/邮件.php

'smtp' => [
    'transport' => 'smtp',
    'host' => env('MAIL_HOST', 'mail.infomaniak.com'),
    'port' => env('MAIL_PORT', 465),
    'encryption' => env('MAIL_ENCRYPTION', 'tls'),
    'username' => env('MAIL_USERNAME'),
    'password' => env('MAIL_PASSWORD'),
    'timeout' => null,
    'auth_mode' => null,
]
Run Code Online (Sandbox Code Playgroud)

Obi*_*nts 6

在您的环境配置中,将电子邮件加密更改为如下所示:由于 symphony swift 邮件程序已过时,MAIL_ENCRYPTION=ssl此错误在大多数情况下很常见。"laravel/framework": "^8.75"

在将我的项目从版本控制中拉出并重新安装软件包后,我也遇到了这个错误。上面的解决方案解决了我的问题,据我了解,该错误是 swift 邮件程序正在尝试使用 smtp 端口打开到您的服务器的 tcp 连接,但该连接仅被允许/支持,ssl://mail.yourdomain.com因此这就是您超时的原因套接字流。

希望我的方法也能帮助解决您的问题。