为什么我的网站没有发送电子邮件?

问题描述 投票:0回答:2

我在使用

Yii2 swiftmailer
发送电子邮件时遇到问题。我无法从我的网站转发电子邮件。

'mailer' => [
            'class' => 'yii\swiftmailer\Mailer',
            'viewPath' => '@common/mail',
            'transport' => [
 'class' => 'Swift_SmtpTransport',
                'host' => 'smtpout.secureserver.net',
                'username' => '[email protected]',
                'password' => 'mypassword',
                'port' => '465',
                'encryption' => 'ssl',
            ],
            'useFileTransport' => true,
        ],

我该怎么做?

我不知道该怎么办。

yii2 hosting phpmailer swiftmailer
2个回答
0
投票

任何错误信息?

'enableSwiftMailerLogging' => true,
您可以使用 .

编写和查看错误日志

如果 ssl 出错,您可以通过以下代码消除 ssl 错误

'transport' => [
    'class' => 'Swift_SmtpTransport',
    'host' => 'smtpout.secureserver.net',
    'username' => '[email protected]',
    'password' => 'mypassword',
    'port' => '465',
    'encryption' => 'ssl',
    'streamOptions' => [
        'ssl' => [
            'verify_peer' => false,
            'verify_peer_name' => false,
        ],
    ],
    'streamOptions' => ['ssl' => ['verify_peer' => false, 'verify_peer_name' => false]],
    'streamOptions' => ['ssl' => ['allow_self_signed' => true]],
    'streamOptions' => ['ssl' => ['verify_depth' => false]],
],
'enableSwiftMailerLogging' => true,

将 verify_peer 设置为 false 可能会使您的应用程序面临安全风险,因为它会禁用对等方 SSL/TLS 证书的验证。


0
投票

可能是因为您将 useFileTransport 设置为 true。如果将其设置为 True,电子邮件将作为文件保存在 $fileTransportPath 下,而不是将它们发送给实际收件人。

© www.soinside.com 2019 - 2024. All rights reserved.