我想通过我的主机电子邮件admin@b4p.et
发送电子邮件我已经通过电子邮件ID传递了此电子邮件,但这是从我在common / config / main.php中配置的SMTP用户名发送邮件
以下是我在common / config / main.php中的邮件配置:
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
'useFileTransport' => false,
'transport' => [
'class' => 'Swift_SmtpTransport',
'host' => 'smtp.gmail.com',
'username' => 'chiefsrsmail@gmail.com',
'password' => '*********',
'port' => '587',
'encryption' => 'tls',
],
],
以下是我的发送邮件功能:
public static function sendMailToUser($ssToEmail, $asFromEmail, $ssSubject, $ssBody, $attach = false)
{
$result = Yii::$app->mail->compose()
->setFrom([$asFromEmail])
->setTo($ssToEmail)
->setSubject($ssSubject)
->setHtmlBody($ssBody)
->send();
return true;
}
我要经过的地方:
$asFromEmail = admin@b4p.et
此功能可以很好地发送电子邮件,但所有电子邮件都通过“ chiefsrsmail@gmail.com”,这意味着所有电子邮件均取自我在配置中提供的SMTP用户名中的电子邮件地址。我想更改它,但并非如此工作。
请帮助我摆脱困境。
答案 0 :(得分:1)
Gmail会自动将通过其SMTP服务器发送的所有邮件的“从”标头改写为用于身份验证的Gmail或Google Apps帐户(在这种情况下为您的个人帐户)中分配的默认“发送为”电子邮件地址。
如果Gmail未注册到主要gmail帐户,则似乎不允许通过其他电子邮件ID发送电子邮件。
此SMTP服务仅供个人使用,因此它不是非常灵活。我们可以通过修改Gmail设置中的默认帐户来更改此地址,但这仍然无法使我们通过应用程序配置“发件人”地址。
要将其他电子邮件添加到Gmail帐户,请执行以下步骤:
在计算机上,打开Gmail。
确认链接已发送到其他电子邮件帐户。 确认后,您的帐户可以从任何一个地址发送电子邮件。
立即尝试使用新的电子邮件地址
->SetFrom("verified_mail_address@gmail.com", 'from_name');
,它将正常工作。
要将其他电子邮件添加到Gmail帐户,请参考以下链接:https://support.google.com/mail/answer/22370?hl=en