【问题标题】:From which email address will php send in mail() functionphp从哪个电子邮件地址发送mail()函数
【发布时间】:2014-05-28 21:36:12
【问题描述】:

我正在制作电子邮件表单,但邮件是从哪个电子邮件地址发送的?

谢谢!

【问题讨论】:

  • 这取决于邮件服务器的配置方式,但一般默认配置会显示为 user_executing_php_process@server

标签: php email


【解决方案1】:

来自您指定为发件人的任何电子邮件地址:

bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

对于标题,您可以添加:

$additional_headers.= "From: foo@bar.com";    

但是请帮助自己并使用 PHPMailer 以及配置良好的专用 SMTP 服务器来发送邮件:https://github.com/PHPMailer/PHPMailer

(否则你会遇到很多问题)

【讨论】:

  • @user3091177 因为您无法“从”您不拥有的地址发送。 php mail() 函数将使用本地 smtp 服务器建立自己的连接(并且很可能由于缺乏正确的配置而被阻止)。当您使用远程 smtp 发送时,smtp 将根据提供的身份验证自动附加“发件人”部分。 (ps.:一般来说还不错 - 但只有大约 0.01% 的想要使用 mail() 的人拥有配置良好的本地 smtp 服务器)
  • 快速提问,“$mail->From = 'from@example.com'”和“$mail->Username = 'user@example.com'”有什么区别
  • @Anwar 用户名是用于与您的 smtp 服务器进行身份验证的名称(不一定是电子邮件地址)。如果您的收件箱提供多个电子邮件地址,您可以指定从哪个地址发送。对于常规的电子邮件提供商,它们是平等的。
【解决方案2】:

PHP 从您在托管时创建的电子邮件地址发送电子邮件。这是您在 cPanel 上创建的电子邮件。

【讨论】:

    猜你喜欢
    • 2012-04-13
    • 2011-11-18
    • 2014-09-22
    • 1970-01-01
    • 2023-03-16
    • 2021-12-08
    • 1970-01-01
    • 2013-10-11
    • 2019-01-10
    相关资源
    最近更新 更多