如何在发送PHP邮件时隐藏服务器信息


How to hide server info when sending PHP mail?

我有这样的东西:

$to = '...';
$subject = '...';
$msg = '...';
$from = 'From: "me<me@domain.com.com>"';
mail($to, $subject, $msg, $from);

当我发送电子邮件时,"from"字段总是有Me @my.serverinfo.com

如何删除服务器信息?

SOLVED去掉了额外的引号。谢谢@Daniel(和其他人)!我将阅读更多关于邮件标题的内容。此外,我不想发送匿名电子邮件:me@domain.com只是简单的例子。

正如Daniel所提到的,这可能是引号的问题。顺便说一下,如果你能访问PHP配置,你可以在PHP。ini

中全局修改

在Windows中……

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.yourisp.com
; http://php.net/smtp-port
smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = You@your.serverinfo.com

或者,如果您运行的是Linux,请参阅@OZ对目录的回答

在php.ini中找到sendmail_path指令:

sendmail_path = /usr/sbin/sendmail -t -i -fyour@email.com

去掉引号有帮助吗?

$from = "From: me<me@domain.com.com>'r'n";

您可能应该阅读一些关于电子邮件RFC(2822)的内容,并创建包含您想要发送的标题的自己的字符串。这是你应该去的第一个地方。在那里你可以找到你想要发送的头是否在官方RFC中,然后在里面写任何你想要的东西。