【发布时间】:2016-09-21 20:26:42
【问题描述】:
为什么? 我可以在 PHP 中通过 mail() 发送,但我不能使用 IsSendmail() 通过 PHPMailer 发送
【问题讨论】:
标签: phpmailer
为什么? 我可以在 PHP 中通过 mail() 发送,但我不能使用 IsSendmail() 通过 PHPMailer 发送
【问题讨论】:
标签: phpmailer
我遇到了同样的错误。通过评论/删除解决它:
$mail->IsSendmail();
现在它可以正常工作了。我可以发送邮件,并在我的收件箱中收到它们。
【讨论】:
isSendMail(),是的,它也对我有用。
您确定路径/usr/sbin/sendmail 正确吗?
如果是,请检查 sendmail 的权限是否设置正确。
【讨论】:
我也有同样的问题。花了将近一个小时检查日志,检查 sendmail 路径并从命令行测试 php mail() 和 sendmail,但无济于事。最后我所做的就是使用apachectl -k graceful 重新启动 Apache,然后宇宙就被治愈了。
【讨论】:
对我来说,它与$mail->IsSMTP() 合作。
IsSendmail() 正在寻找发送邮件。
【讨论】:
我同意上述集团。所有服务器上都启用了默认的 mail() 功能(我相信)。在我的情况下,我能够使用简单的 mail() 函数发送基本的 html,但是当我使用 PHPMailer 执行此操作时,我遇到了该错误。
所以我删除了它检查的部分,即 IsSendMail(),一切都很好。现在抛出更多异常。
对于想要使用 SMTP 的人。首先在您的服务器上创建一个电子邮件帐户,然后在您的代码中定义其参数。
干杯,
塔尔哈
【讨论】:
删除 IsSendmail() 给我带来了另一个错误,最后主机提供商不得不删除 PHP 设置上的安全模式。然后它工作了
大卫·伯德斯编辑
不应在实时服务器上设置安全模式!例如,在 Joomla 或其他 CMS 解决方案上运行的网站,除非在测试环境中,否则不应启用它
【讨论】:
在共享服务器上启用safe_mode 的PHP(可能也在其他服务器上)将无法打开/usr/sbin/sendmail(PHPMailer 使用popen)
【讨论】: