我是新来的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}"
字符串
config/mail.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,
]
型
2条答案
按热度按时间46qrfjad1#
在你的环境中,将你的电子邮件加密改为这样:
MAIL_ENCRYPTION=ssl
这个错误在"laravel/framework": "^8.75"
中很常见,因为symphony swift mailer已经过时了。在从版本控制中取出我的项目并重新安装软件包后,我也遇到了这个bug。上面的解决方案解决了我的问题,从我对错误的理解来看,swift mailer试图使用smtp端口打开到服务器的tcp连接,但该连接仅允许/支持
ssl://mail.yourdomain.com
,所以这就是为什么你在socket流上超时。希望我的方法也能帮助你解决问题。
kmb7vmvb2#
您必须在
mail.infomaniak.com
之前添加smtp
:字符串