3

有什么方法可以在我的 Linux 服务器上安装 SMTP 服务并使用 php 通过它发送电子邮件?

这样电子邮件就不会显示为垃圾邮件?

也许通过 ssl ?

我的 mail() 函数很完美,有完美的标题,但仍然发送到垃圾邮件:(

谢谢 。

4

3 回答 3

2

从另一个答案交叉发布自己 :

几个要点(假设 mail() 返回 true 并且错误日志中没有错误):

  • 发件人地址(“发件人”)是否属于您服务器上的域?如果没有,那就这样吧。
  • 您的服务器是否在黑名单上(例如在 spamhaus.org 上检查 IP)?对于共享主机来说,这是一种遥远的可能性。
  • 邮件是否被垃圾邮件过滤器过滤?使用具有垃圾邮件文件夹的免费邮件程序打开一个帐户并找出答案。此外,请尝试将邮件发送到没有垃圾邮件过滤器的地址。
  • 您是否可能需要 mail() 的第五个参数“-f”来添加发件人地址?(参见 PHP 手册中的 mail() 命令)
  • 如果您有权访问日志文件,请按照上面的建议检查这些文件。
  • 您是否检查“发件人:”地址是否有可能的退回邮件(“退回给发件人”)?您还可以设置一个单独的“出错地址”。
于 2010-11-15T11:08:26.820 回答
1

这里可能涉及很多变量。

您对完美标题的想法似乎很主观。我建议您使用 PHPMailer 或 Swiftmailer 之类的东西来处理您的邮件需求。

您可能需要考虑的其他一些变量是退回电子邮件的处理,并确保您以大块的形式发送邮件而不是一次大发送。

于 2010-11-15T11:00:21.810 回答
0

您可以重新检查您的标头,也许地址标头中可能有空格或其他内容,您还可以检查您的服务器的 ip 是否被列入黑名单(http://www.anti-abuse.org/multi-rbl-check/ )

于 2010-11-30T05:55:17.707 回答