如何在 log4php 上指定 smtp 主机我将使用以下配置将它与 gmail 一起使用。
smtp.gmail.com (use authentication)
Use Authentication: Yes
Port for TLS/STARTTLS: 587
Port for SSL: 465
你没有说这与什么操作系统有关 - 在 Microsoft 平台上。log4php 使用 PHP 的 mail 命令 - 但与其他所有操作系统(通过 stdio 使用本地二进制程序)相比,这在 Microsoft(SMTP TCP 客户端)上的实现方式不同。
解决这个问题的最简单方法是修改 LoggerAppenderMail 以使用 phpmailer 或 swift mailer 代替 php mail() 命令。
但是,如果您不想修改标准库并且必须维护自己的补丁集,那么您应该设置一个本地 MTA,它可以通过 SSL 进行智能中继,并带有身份验证,例如ssmtp或msmtp。当然,如果您真的需要,您可以使用完整的 MTA,例如 postfix 或 sendmail。