首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHPMailer:动态gmail转发

PHPMailer:动态gmail转发
EN

Stack Overflow用户
提问于 2015-08-05 14:21:03
回答 2查看 1.6K关注 0票数 0

我不知道我想做什么是可能的(但是发现它本身并不有用)。

我不能直接在PHPMailer上使用我公司的gmail帐户“PHPMailer”。不过,我可以使用中间的gmail帐户"fake.12345.account@gmail.com“,它可以启用”不太安全的应用程序“,从而允许SMTP验证。

然而,我不想让电子邮件从这个fake.12345.account@gmail.com帐户发送(看起来不是特别专业),而是公司的gmail帐户。

我可以通过编辑real.business@gmail.com参数将中介帐户的电子邮件发送到PHPMailer,或者通过将电子邮件从fake.12345.account@gmail.com自动转发到公司帐户。

问题在于real.business@gmail.com如何才能成功地发送电子邮件(或者至少看起来是发送者),就像最初所期望的那样。

到目前为止的代码

代码语言:javascript
复制
$Mail = new PHPMailer();
$Mail->IsSMTP(); // Use SMTP
$Mail->Host        = "smtp.gmail.com"; // Sets SMTP server for gmail
$Mail->SMTPDebug   = 0; // 2 to enable SMTP debug information
$Mail->SMTPAuth    = TRUE; // enable SMTP authentication
$Mail->SMTPSecure  = "tls"; //Secure conection
$Mail->Port        = 587; // set the SMTP port to gmail's port
$Mail->Username    = 'fake.12345.account@gmail.com'; // gmail account username
$Mail->Password    = 'a_password'; // gmail account password
$Mail->Priority    = 1; // Highest priority - Email priority (1 = High, 3 = Normal, 5 =   low)
$Mail->CharSet     = 'UTF-8';
$Mail->Encoding    = '8bit';
$Mail->Subject     = 'Mail test';
$Mail->ContentType = 'text/html; charset=utf-8\r\n';
$Mail->From        = 'testing.num.101@gmail.com'; //Your email adress (Gmail overwrites it anyway)
$Mail->FromName    = 'Testing Again';
$Mail->WordWrap    = 900; // RFC 2822 Compliant for Max 998 characters per line

$Mail->addAddress($personEmail); // To: the PERSON WE WANT TO EMAIL
$Mail->isHTML( TRUE );
$Mail->Body    = ' Good news '.$personName.'! The email sent correctly!';
$Mail->AltBody = 'This is a test mail';
$Mail->Send();
$Mail->SmtpClose();

if(!$Mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $Mail->ErrorInfo;
exit;
}

所以问题是:不是让$personEmail从fake.12345.account@gmail.com发送电子邮件(这很简单),而是如何将电子邮件从fake.12345.account@gmail.com发送到real.business@gmail.com,这样real.business@gmail.com就可以将消息转发给$personEmail

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-05 14:53:08

您所描述的是真正的中继,它通常是在邮件服务器配置(而不是消息)中配置的,但是您在gmail中没有类似的访问权限。

您可以在gmail中设置允许的别名,但我猜这些别名不允许与现有的gmail帐户名称重叠,因为这将是一个主要的安全漏洞。为什么不在主帐户上启用“安全性较低的应用程序”呢?这并不是说它实际上更不安全--如果说有什么更好的话,因为使用OAuth2的设置非常复杂和令人不快…

也就是说,您可能对这个公关关联文档感兴趣,而不是试图做所有这些伪造操作。很有可能xoauth分支将被合并到master中,并在没有任何进一步更改的情况下发布,比如PHPMailer 5.2.11,如果您能够尝试一下,这将非常有帮助。

票数 0
EN

Stack Overflow用户

发布于 2015-08-05 14:48:17

PHPMailer是用来发送的。

你要做的是转发一封电子邮件。这意味着接收电子邮件,然后通过它发送。

您需要的是某种php中的IMAP客户端,它将允许您在上读取fake.12345.account@gmail.com (可能还有real.business@gmail.com)上的电子邮件。然后保存他们的身体和标题并将其传递给PHPMailer。然后,您可以使用PHPMailer 向发送电子邮件和real.business@gmail.com。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31835208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档