这是一个棘手的问题,我一直依赖于技术,比如基于许可的电子邮件(即只发送给你有权发送的人),而不是公然使用垃圾邮件术语。

最近,我以编程方式发送的一些电子邮件开始被自动转移到别人的垃圾邮件文件夹中,我不知道该怎么办。

尽管这些特定的电子邮件并不是人类会标记为垃圾邮件的,具体来说,它们是包含许可密钥的电子邮件,人们已经花了很多钱购买,所以我不认为他们会认为它们是垃圾邮件

我认为这是一个很大的话题,在这个话题上我基本上是一个无知的傻瓜。


当前回答

以下是之前回答中的几个要点:

Most important: Does the sender address ("From") belong to a domain that runs on the server you send the E-Mail from? If not, make it so. Never use sender addresses like xxx@gmail.com. User reply-to if you need replies to arrive at a different address. Is your server on a blacklist (e.g. check IP on spamhaus.org)? This is a possibility when you're on shared hosting when neighbours behave badly. Are mails filtered by a spam filter? Open an account with a freemailer that has a spam folder and find out. Also, try sending mail to an address without any spam filtering at all. Do you possibly need the fifth parameter "-f" of mail() to add a sender address? (See mail() command in the PHP manual) If you have access to log files, check those, of course. Do you check the "from:" address for possible bounce mails ("Returned to sender")? You can also set up a separate "errors-to" address.

其他回答

在过去的工作中,我在很多网站上都遇到过同样的问题。确保用户收到邮件的唯一保证方法是建议用户将你添加到安全列表中。其他任何方法都只能帮助解决这个问题,而且不能保证。

我不想告诉你,但我和其他人可能正在使用默认白名单来控制我们对垃圾邮件的过滤。

这意味着所有来自未知来源的电子邮件都自动成为垃圾邮件,并转移到垃圾邮件文件夹中。(我不让我的电子邮件服务删除垃圾邮件,因为我想总是检查到达的邮件是否有误报,这很容易做到,只需快速扫描文件夹。)

我甚至把自己的电子邮件放到垃圾邮件桶里,因为(1)我通常不给自己发电子邮件,(2)有垃圾邮件发送者在发给我的垃圾邮件中伪造我的回复地址。

因此,为了摆脱垃圾邮件的定义,我必须考虑您的邮件可能是合法的(从发件人和主题信息来看),并首先以明文形式打开它(我对所有传入邮件的默认设置,无论是否为垃圾邮件),以查看它是否合法。我的垃圾邮件文件夹不会使用电子邮件中的任何链接,这样我就可以免受棘手的图像链接和其他不当行为的影响。

如果我希望来自同一来源的未来邮件进入我的收件箱,而不是被转移到垃圾邮件审查,我将指定给我的电子邮件客户端。对于那些使用批量邮件转发器和每封邮件的唯一发件人地址的组织来说,这太糟糕了。它们从未得到我的批准,总是出现在我的垃圾邮件文件夹中,如果我很忙,我就永远不会看它们。

最后,如果电子邮件的明文格式不清晰,即使以HTML格式发送,我也可能直接删除它,除非根据来源和以前的宝贵经验,我知道它是我感兴趣的东西。

正如您所看到的,它最终是在用户的控制之下,没有自动的行为可以说服这样的系统,仅从其结构来看,您的邮件是合法的。在这种情况下,您需要表现良好,不要做任何类似于网络钓鱼的事情,并使愿意信任您的邮件的用户很容易将您添加到他们的白名单中。

您可以告诉用户在完成订单时将您的From地址添加到他们的联系人,如果他们这样做,将会有很大帮助。

否则,我将尝试从您的一些用户那里获取日志。有时,他们会在邮件的标题中详细说明为什么它被标记为垃圾邮件,您可以使用它来调整文本。

你还可以试试其他方法:

在主题中写上你的网站名称或地址 保持邮件中的所有链接指向你的域名(而不是email.com) 在邮件中写上地址或其他联系方式

听起来你是在依赖一些反馈来确定接收端的问题是什么。您应该自己检查出站邮件是否有明显的“垃圾邮件”。

买一个像样的垃圾邮件控制系统,然后通过它发送邮件。如果要发送相当数量的邮件,无论如何都应该这样做,因为有发送出站病毒的风险,特别是如果您使用的是桌面windows用户。

例如,Proofpoint在一次部署中提供了垃圾邮件+反病毒+一些信誉服务。(我曾经在那里工作过,所以我碰巧知道这个。我相信这个领域的其他供应商也有类似的功能。)但你懂的。如果您通过基本的商业垃圾邮件控制设置发送邮件,但邮件没有通过,那么它不应该流出您的网络。

此外,还有一些公司可以帮助你提高非垃圾邮件的发送率,如人身保护令。

我总是用: https://www.mail-tester.com/

它能给我关于发送电子邮件的技术方面的反馈。比如spf记录,DKIM, Spamassassin分数等等。即使我知道需要做什么,我还是不断地犯错误,mail-testster.com让我很容易找出哪里出了问题。