[英]Cannot set Custom Sender email using PHPMailer and smtp.gmail.com
我正在使用 PHPMailer 和 smtp.gmail.com 向我的用户发送电子邮件。 电子邮件已发送,没问题,但在客户端,在发件人电子邮件地址中,显示的是我的服务器主机电子邮件地址,而不是我使用 PHPMailer->SetFrom() 设置的电子邮件地址。 我想将我的电子邮件地址设置为发件人电子邮件。 我正在使用 php 5.4 & PHPMailer 5.2.4 我的代码如下:
<?php
require_once('class.phpmailer.php');
$mail = new PHPMailer(true);
try {
$mail->SMTPDebug = 2;
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "smtp.gmail.com";
$mail->Port = 465;
$mail->Username = "myemail@gmail.com";
$mail->Password = "PASSWORD";
$mail->AddAddress('receiver@email.com', 'John Doe');
$mail->SetFrom('myemail@email.com', 'My Name');
$mail->addReplyTo('myemail@gmail.com', 'My Name');
$mail->Subject = 'PHPMailer Subject';
$mail->MsgHTML('This is the body');
$mail->Send();
echo "Message Sent";
} catch (phpmailerException $e) {
echo $e->errorMessage();
} catch (Exception $e) {
echo $e->getMessage();
}
?>
这是 gmail 的限制 - 它不允许您从地址中任意设置,但您可以在 gmail 首选项中设置固定别名。 这在 PHPMailer 文档中有介绍。 这也是一个合理的限制 - 否则您可能会伪造发件人地址。 如果您关心的是回复路由,您可以随时设置回复地址。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.