繁体   English   中英

使用 gmail 帐户和 PHPMailer 从 Heroku 服务器发送电子邮件

[英]Send email from Heroku server using gmail account and PHPMailer

我有一个 Heroku 应用程序,它有一个发送电子邮件的 php 脚本。 发送的电子邮件总是进入垃圾邮件。 我知道这个问题之前已经被问过很多次了,但是我一直无法找到一个解决方案来帮助我在使用 gmail 帐户时解决没有自定义域的 Heroku 网站的问题。

假设 heroku 应用程序是 mywebsite.herokuapp.com,我的电子邮件是 mywebsite@gmail.com。 根据我的研究,我了解到问题可能是电子邮件是从我的服务器发送的,该服务器是 mywebsite.herokuapp.com,但电子邮件地址是 gmail.com。

如果我使用$mail->Host = 'smtp.gmail.com'; 这可能是问题吗?

根据我的研究,其他问题可能与 SPF 或 DKIM 有关,但似乎通过 gmail 帐户发送它可能使这不是问题?

服务器设置:

$mail->isSMTP();                                            
$mail->Host       = 'smtp.gmail.com';                    
$mail->SMTPAuth   = true;                              
$mail->Username   = 'mywebsite@gmail.com';                    
$mail->Password   = 'secretpassword';                              
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;        
$mail->SMTPSecure = 'ssl';
$mail->Port       = 465;  

我花了很多时间试图在线查找它,但我发现的所有内容都与自定义域及其 DNS 设置(首先)有关,而 Heroku 应用程序无法提供这些设置。

链接提供了许多一般(非常有用)的信息,但我无法从中判断是否有适合我的情况的解决方案。 是我获得有用信息的壁橱,但它没有给我足够的信息来继续。

有什么建议?

谢谢

从根本上说,如果您不通过 gmail 的服务器发送邮件,则根本无法从 gmail 地址发送邮件。 他们的 SPF、DKIM 和 DMARC 记录不允许这样做。 此外,您不能从不属于您的 Gmail 地址或您的预定义别名发送邮件。

PHPMailer 有一些关于避免垃圾邮件过滤器的文档(基本上是通过看起来不像他们想要阻止的东西),但是你能做的并不多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM