需要 mail() 在 PHP 中工作的简单 Web 服务器的 Sendmail 配置

需要 mail() 在 PHP 中工作的简单 Web 服务器的 Sendmail 配置

我有一个 Web 服务器(CentOS 5),我需要能够使用 PHP mail() 函数发送邮件。

我的 PHP mail() 函数运行正常。我需要调整 Sendmail 配置。

我需要在服务器上配置 sendmail 来发送“发件人”[电子邮件保护]“。

我知道,如果你去查看 sendmail 常见问题解答,它会说“我们在 MASQUERADING AND RELAYING 中详细讨论了这个问题(http://www.sendmail.org/m4/masquerading.html) 部分”,但我已经一遍又一遍地浏览过该部分,而我的邮件日志仍然显示如下内容:

Aug 4 15:11:11 tdbb sendmail[30582]: n73Mngeq028343: to=, ctladdr= (48/48), delay=20:21:29, xdelay=00:00:01, mailer=esmtp, pri=2129764, relay=smtp.easydns.com. [64.68.200.52], dsn=2.0.0, stat=Sent (Ok: queued as 6120181E4C)

我宁愿这样说:

Aug 4 15:11:11 tdbb sendmail[30582]: n73Mngeq028343: to=, ctladdr= (48/48), delay=20:21:29, xdelay=00:00:01, mailer=esmtp, pri=2129764, relay=smtp.easydns.com. [64.68.200.52], dsn=2.0.0, stat=Sent (Ok: queued as 6120181E4C)

注意 ctladdr 部分。

这是我所做的:

在 /etc/mail/sendmail.mc 中

我已经启用了该线路:

MASQUERADE_AS(`mydomain.com')dnl

FEATURE(masquerade_envelope)dnl

除了这两行之外,我认为我没有改变默认配置的任何内容。

当然,当我完成配置文件后,我会转到 /etc/mail 并运行“make”、“make restart”。

答案1

确保这些设置已更改 sendmail.cf 文件。我以前曾与 sendmail 配置作斗争,这需要一些耐心和理解。我通常会 m4 文件以便重新生成 cf 文件,然后重新启动 sendmail 服务。

也可以尝试一下这些:

MASQUERADE_AS(`mydomain.com')dnl
MASQUERADE_DOMAIN(`mydomain.com')dnl
FEATURE(`masquerade_envelope')dnl

这些通常对我有用。祝你好运。

相关内容