有人知道是否可以使用STARTTLS加密运行phpmailer吗?
故事:一个在线订单,将输出发送给网站访问者和网站所有者。目标是访问者收到的电子邮件orders@ownerdomain.com,而网站所有者收到的电子邮件visitor@somedomain.com(访问者在在线表格中填写的地址)。
我的phpmailer在我的Gmail帐户上运行良好,在端口587上使用TLS。然而,我想使用主机提供的邮箱(这样from/replyTo看起来很专业,没有免费邮件)。不幸的是,托管提供商不提供TLS——在他们的知识库中,他们只提到了STARTTLS。我尝试了SSL、TLS和STARTTLS的所有加密组合,以及465和587的端口组合,但都没有成功。
有人知道STARTTLS是否可以实现吗?
我的计划B是使用Gmail SMTP凭据,然后在phpmailer SMTP设置中修改addReplyTo、setFrom和addAddress//strong>。我试过了,但如果我用。。。
$mail->addReplyTo($_POST['customeremail'], $_POST['customername']);
网站所有者从收到的电子邮件地址是我的谷歌电子邮件的地址-我知道这可能是一些谷歌电子邮件欺骗保护,它不允许SMTP发送带有表单中发件人地址的电子邮件。-请参阅附件![雷鸟屏幕(图片:imgur.com/a/1f6vY).
这可能被覆盖吗?
我的意思是,有了B计划的解决方案,我可以授权谷歌代表orders@ownerdomain.com
发送电子邮件,这没关系,然后它会模仿专业域名。但我不能对访客地址(取自表格)做同样的事情,这是有道理的,对吧?
提前感谢大家。。。
是的,PHPMailer默认执行TLS加密。查看SMTPSecure
属性以了解更多详细信息。
Gmail确实可以防止您设置任意的发件人地址,尽管您可以在帐户中预设别名。PHPMailer文档中提到了这一点,并在此处进行了多次介绍。