技术解析 · 附来源的解答

WP Mail SMTP:定义与功能

WP Mail SMTP 是一款 WordPress 插件,它用专门的 SMTP 中继取代默认的 PHP mail() 函数。通过专业的邮件服务器而不是本地 Web 服务器发送邮件,它可以确保事务性邮件经过身份验证并可靠送达。

核心定义

WP Mail SMTP 是 WordPress 的一个配置层,用于拦截 wp_mail() 函数。它不依赖服务器本地的邮件代理(这类代理往往未经配置或被主机商封锁),而是连接外部 SMTP 服务器或 API 来传输邮件。这样,邮件投递的职责就从网站主机转移到了专业的邮件投递服务。

工作机制

该插件通过简单邮件传输协议(SMTP)或 REST API 与远程服务器建立连接,并使用 API 密钥或用户名加密码等凭据完成身份验证。验证通过后,插件将邮件负载传输给中继,再由中继按照 RFC 5321 标准完成向收件人邮件服务器的最终投递。

对发件人的重要性

使用专门的中继至关重要,因为本地 Web 服务器缺乏现代邮件过滤器所要求的信誉和身份验证记录。借助中继,发件人可以配置 SPF、DKIM 和 DMARC 记录,从而降低邮件在执行严格身份验证检查的收件服务器上被标记为垃圾邮件或被拒收的可能性。

运维说明

一个常见错误是使用个人 Gmail 账户大量发信,这可能导致账户被停用。开发者应改用事务性邮件服务。为确保中继配置正确,用户可以使用 SendHQ 或其免费工具(https://sendhq.cc/tools)检查 DNS 记录是否与所选的 SMTP 服务商保持一致。

实现示例

典型的设置步骤是安装插件,并选择 Amazon SES 等邮件发送方式。用户输入 SES SMTP 端点、用于 STARTTLS 的 587 端口以及相关的 IAM 凭据。保存后,所有 WordPress 通知(例如密码重置和订单确认)都会通过 AWS 基础设施发送,而不是经由本地服务器。

团队常问的问题

为什么默认的 PHP mail 函数不可靠?

PHP mail() 缺少身份验证,而且经常从未经验证的服务器 IP 发信,导致收件服务器将邮件标记为垃圾邮件或直接拒收。

WP Mail SMTP 能提升邮件送达率吗?

它让您能够使用经过身份验证的中继和 API 服务,从而可以用 DKIM 和 SPF 为邮件提供身份验证,提升信任度。

这个插件可以使用任何 SMTP 服务器吗?

可以,它支持任何遵循标准 SMTP 协议或提供受支持的邮件发送 API 的服务器。

一手资料