我已经在 Debian Sid 上设置了一个 exim4 服务器,仅用于发送电子邮件。
如果我只是发送一封电子邮件,它就可以正常工作,并且该电子邮件会发送到我的收件箱中。但是,如果我使用 WordPress 发送电子邮件,它会被发送到我的垃圾邮件箱中。
我认为这是由于以下原因造成的:
envelope-from <[email protected]>
Return-Path: [email protected]
From: WordPress <[email protected]>
标头不匹配。这会导致此问题吗?请注意以下区别:示例.com和example2.com。
我尝试在 exim4 的配置中设置以下行,但没有帮助(标题没有改变):
当然,此后我重新启动了 exim4。
MAIN_TRUSTED_USERS = uucp : www-data
[...]
trusted_users = MAIN_TRUSTED_USERS
untrusted_set_sender = *
我已经设置了 SPF 记录:
这些可能还没有解决,会不会是问题所在?
example.com: "v=spf1 ptr -all"
example2.com: "v=spf1 include:example.com -all"
WordPress 应该使用-f
sendmail 的参数,因为它使用 PHPMailer 类,默认情况下这样做。但是,我想在 exim4 级别解决这个问题(可能使用和 的From
标头)。envelope-from
Return-Path
我不在乎其他用户是否也可以从其他电子邮件地址发送电子邮件,因为 www-data 基本上是该服务器上唯一的用户。
如果您需要更多信息,请询问我。
我添加了以下几行:
local_from_check = false
local_sender_retain = true
untrusted_set_sender = *
但它仍然不起作用。
答案1
WP 应配置为通过 SMTP 协议发送消息。通常通过套接字/LMTP 执行本地提交,其中本地用户(Web 服务器所有者)用作发送者。当 MTAwww@localhost
变得非常严格时。