我正在使用 PHPMailer,但很难让 bluehost 上的 isSMTP 正常工作。我已经能够让 isMail 工作,并且想知道发送邮件有什么区别。另外,在尝试使用 isSMTP 时,我似乎收到 HELO 或身份验证错误,但 bluehost 说我的设置是正确的。我正在使用 SSL 和端口 465。
isMail
and isSMTP
是设置 PHPMailer 的值的便捷方法Mailer
财产。该属性决定 PHPMailer 在构建消息后如何发送消息。和isMail
,它是使用 PHP 发送的mail
功能。和isSMTP
,它使用 PHPMailer 的附带SMTP
类充当 SMTP 客户端,直接与邮件服务器通信。
使用mail
功能要求您在本地计算机上安装并运行邮件服务器 - 至少在历史上,Windows 并非如此。一般来说,使用邮件功能相当快,因为它不需要与远程主机通信,但是,由于它实际上充当系统自身的前端,因此效率相当低。sendmail
二进制文件,它只是打开到本地主机的同步 SMTP 连接。你得到的反馈也会少得多 -mail
函数返回布尔值,因此如果它不起作用,则很难说出失败的原因,您可能需要查看邮件服务器的日志才能找到答案。
您可以使用 SMTP 路由发送到本地或远程邮件服务器,通常 SMTP 到本地主机是最快的发送方式。因为 PHPMailer 使用自己的 SMTP 客户端来执行此操作,这意味着它可以看到整个 SMTP 会话,从而在出现问题时获得更好的反馈 - 您可以设置SMTPDebug = 2
并查看整个对话。
有很多事情可能会出错,追查根本原因的最佳位置是阅读PHPMailer 故障排除指南.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)