php - 使用 gmail smtp 服务器时如何更改发件人地址

标签 php email smtp gmail

我想通过 gmail 从 AB 发送一封电子邮件,其中包含 HEADERCONTENT

如何用 PHP 做到这一点?

我已指定 FROM (from@example.com),但当我收到电子邮件时,它仍然来 self 的 Gmail 帐户 (abc@gmail.com)。

$mail->From = "from@example.com";
$mail->FromName = "Mailer";
$mail->AddAddress("abc12@163.example", "Josh Adams");// name is optional
$mail->AddReplyTo("abc12@qq.example", "Information");

如何更改 FROM 部分?

最佳答案

简短的回答 - 你不能。

Google 会将您通过其 SMTP 服务发送的邮件中的发件人和回复 header 重写为与您的 Gmail 帐户相关的值。

gmail 的 SMTP 功能并非旨在成为开放或中继服务。如果允许“发件人” header 使用任何值,则会严重削弱 Google 在垃圾邮件服务方面的地位,因为无法验证发件人的凭据。

您需要考虑替代方案。完成后您打算如何托管您的脚本/应用程序/网站:几乎每个托管解决方案(共享/vps/专用服务器)都将预先配置电子邮件传输解决方案:无论是 *nix 上的 sendmail 或 postfix,还是 Windows 上的 IIS。

如果您打算使用 Gmail,那么您可以:

  • 设置专用的 myapp@gmail.com 帐户
  • 如果您拥有要发送邮件的域名,请使用 free gmail for domains ,并设置一个 myapp@mydomain.example 帐户。

====

编辑 2015 年 6 月

有人建议 GMail 允许 sending via different addresses 。据我所知,这是通过 GMail wep 应用程序发送的,并利用您现有的外部 SMTP 服务器,这与原始问题无关。

====

2013 年 11 月编辑

看来这仍然得到了少量的选票。快速更新。

Google 已撤回免费的域名 GMail。周围还有很多其他免费服务。值得注意的是 Mandrill - 用于交易电子邮件(例如电子商务订单等)的一对一电子邮件服务。它由 MailChimp 运营,他几乎了解有关批量发送电子邮件的所有知识。他们还免费给你 12k/月,这相当不错。

关于php - 使用 gmail smtp 服务器时如何更改发件人地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29696968/

相关文章:

python - 来自不同 smtp 服务器的电子邮件 django 服务器错误

php - 如果为空,则更新列 a,否则更新列 b,否则如果两列都不为空,则不执行任何操作

php - 使用 Define() 标记访问属性?

php - 如何将CSS类应用于上传的图片?

asp.net - vb.net 发送电子邮件时出错

html - 是否可以在电子邮件 HTML 和 CSS 中创建移动响应字体大小?

PHP 在 Windows 上发送邮件导致发送电子邮件后为 'hang'

php - 嵌套查询语法改进

php - 通过 PHP 代表其他人发送电子邮件

c# - MailMessage 忽略我的换行符