【发布时间】:2026-01-10 18:15:02
【问题描述】:
我有一个每天发送电子邮件的应用程序。我正在使用 SwiftMailer PHP 库和 SMTP 帐户。
我向以下提供商发送了测试电子邮件,以查看电子邮件是否进入收件箱或垃圾邮件:
- GMail (OK - Inbox)
- Yahoo (OK - Inbox)
- AOL (OK - Inbox)
- Outlook (FAIL - Junk)
现在我使用的代码:
// init smtp transport
if ($smtp_ssl !== false)
{
$transport = Swift_SmtpTransport::newInstance($smtp_host, $smtp_port, strtolower($smtp_ssl));
}
else
{
$transport = Swift_SmtpTransport::newInstance($smtp_host, $smtp_port);
}
// using login/password
if($smtp_user !== false && $smtp_pass !== false){
$transport->setUsername($smtp_user);
$transport->setPassword($smtp_pass);
}
$mailer = Swift_Mailer::newInstance($transport);
$status = $mailer->send($message);
我不明白为什么 Outlook 将其视为垃圾邮件。
现在我注意到的是,如果我的 SMTP 帐户来自我的服务器,例如:test@myserverdomain.com 进入垃圾邮件,但如果我将 SMTP 帐户更改为类似 test@ gmail.com 然后进入收件箱。
我的服务器域是否有问题,hotmail 将其视为垃圾邮件?
此外,如果我的 SMTP 帐户是 test@gmail.com,现在 AOL 会将从此 SMTP 帐户发送的电子邮件视为垃圾邮件。
【问题讨论】:
标签: php email smtp swiftmailer