首页 > 解决方案 > 我需要服务器上的 SMTP 或 POP3 来运行 PHPMailer 吗?

问题描述

我有一个繁忙的 CentOS 网络服务器,它使用 PHPMailer 发送大量出站电子邮件。Postfix 和 Sendmail 都安装在它上面,但是由于没有使用服务器发送电子邮件的用户帐户,我想知道我是否可以将它们都卸载并关闭端口 25,110,465,587 以确保安全。PHPMailer 仍然可以发送出去吗?

标签: phpmailersendmailpostfix-mta

解决方案


实际上,您不需要本地邮件服务器,但是,如果它真的很忙,通过本地邮件服务器发送将比通过任何外部服务发送更有效,特别是如果这些消息正在立即(并且同步)发送响应 HTTP 请求。您可以在 github 上的 PHPMailer wiki 中查看更多相关信息。

您绝对不需要 POP3,但如果您要接收/处理来自您发送的消息的退回并希望它们返回给您,您可能需要端口 25 上的入站。

在这种情况下,您只需要双向打开端口 25,其他都不需要。

另外,请清楚您所说的 sendmail 是什么意思。Postfix 是一个完整的邮件服务器, sendmail 也是如此但名称 sendmail 也经常用于指代sendmail实际上是本地消息提交代理的二进制文件 - 这是 PHPmail()函数使用的。postfix 提供了 sendmail 二进制文件,但 postfix 不是 sendmail。


推荐阅读