为每个域配置 php mail()

7 email php sendmail

我的专用服务器上有大约 6 个站点(运行 centos5),所有使用 php 邮件功能发送的电子邮件都是由 nobody@servername.hostname.com 发送的,例如“已收到:来自nobody by servername.hostname.com 与本地(Exim 4.69) ”。有什么方法可以更改它以显示适当的域?

sym*_*ean 6

PHP手册mail()

注意:发送邮件时,邮件必须包含发件人标头。这可以使用 additional_headers 参数设置,或者可以在 php.ini 中设置默认值。

像大多数 php.ini 设置一样,这可以在 Apache 上的 vhost 配置中或通过 .htaccess 覆盖,也可以在脚本中设置(可选使用 auto_prepend),从 5.3.0 开始通过.user.ini文件。但是,与其显式设置 From、Reply-To 和 Return-path 标头,不如在调用“sendmail”程序来处理消息时指定收件人更简单。

假设 exim 使用命令行上的标准标志作为其 sendmail cli:

在 php.ini 中:

sendmail_path = "/usr/sbin/sendmail -ffrom@example.com -t -i"
Run Code Online (Sandbox Code Playgroud)

在 httpd.conf 中

php_admin_value sendmail_path "/usr/sbin/sendmail -ffrom@example.com -t -i"
Run Code Online (Sandbox Code Playgroud)

在 .htaccess.conf 中

php_value sendmail_path "/usr/sbin/sendmail -ffrom@example.com -t -i"
Run Code Online (Sandbox Code Playgroud)

(注意您的 sendmail 路径可能与显示的不同)

C。