将 Postfix 的默认地址从 www-data 更改为其他地址

将 Postfix 的默认地址从 www-data 更改为其他地址

在 Ubuntu 服务器上设置 Postfix 和 Apache/PHP。现在邮件已使用正确的域名正常发送,但本地部分显示名称始终为“www-data”,因为我假设 Postfix 默认使用用户的名称。

在 php.ini 文件中,我能够将 更改为 ,sendmail_path但电子邮件显示名称仍然显示为 www-data 。 我尝试以几种不同的方式指定显示名称,但这些方法都被忽略了,邮件仍然以 www-data 的形式发出。sendmail_path = "/usr/sbin/sendmail -t -i -f [email protected]"

我希望能够默认地让任何缺少发件人、返回路径等标题的邮件以 形式发出,但我不确定这是否可能。"Example Support" <[email protected]>

答案1

据我理解,您试图设置发件人的全名,而不是地址(或除了地址之外)。一般来说,Postfix 并不关心这是什么,您可以在 MUA(在本例中是某个 php 脚本)生成邮件头时设置它。我不熟悉 php 编码,但看起来这在PHP mail() 函数

但是如果你调用 postfix 的sendmail二进制文件来发送消息,你可以使用它-F "Support System"来做你想做的事情。也许这必须在mail.force_extra_parameters设置中 — 我不太清楚 php 在这里是如何工作的。(大多数情况下,无论如何这都是错误的做法。)

答案2

添加你的main.cf

smtp_generic_maps = hash:/etc/postfix/generic

并创建一个名为 /etc/postfix/generic 的文件,内容如下:

www-data [email protected]

运行postmap /etc/postfix/generic编译并重新加载 postfix。您的发送名称现在是[电子邮件保护]

答案3

您应该做最后一件事来完成@Dom 忘记的进程。运行以下命令:

$ postmap /etc/postfix/generic

generic.db此命令将在 /postfix 目录中创建文件。

如果不这样做,您可能会遇到以下错误输出:

fatal: open database /etc/postfix/generic.db: No such file or directory

答案4

尝试这个

/etc/apache2/环境变量

用户 ${APACHE_RUN_USER} 组 ${APACHE_RUN_GROUP}

相关内容