使用 PHP 测试 SMTP 服务器是否正常工作
Using PHP to test that an SMTP server is working properly
我看到了使用 PHP 向 SMTP 服务器发送电子邮件的代码,但这并不意味着电子邮件可以正常发送。
我想知道你们是否都遇到过 SMTP 服务器的端到端测试:
从 SMTP 向另一台服务器发送测试电子邮件
检索该电子邮件
大概电子邮件中会有一个 ID,如果定期这样做,发送的电子邮件可以连接到收到的电子邮件。
显然,这确实是在测试两台服务器的正常运行时间以及两者之间的 inet 连接,除非 SMTP 服务器向自己发送了一封电子邮件。
我的方法是在远程 SMTP 服务器上配置一个帐户来自动回复邮件。在主题行中放置一个唯一值,以便您可以识别返回的消息(如时间戳)并发送消息。
使用脚本从本地服务器上的邮箱中弹出消息,回复进入并读取唯一值(或使用 IMAP 读取消息;两者都可以)。
如果您使用时间戳,那么很容易衡量往返花费的时间。
如果您的 ping 消息丢失或无法在合理的时间内 return 重新生成您的 ping 消息,您将需要一种机制。
如果您不想走往返路线,请发送您的消息并使用 POP/IMAP 从您发送消息的帐户读取消息。这更容易做到。
-瑞克
我看到了使用 PHP 向 SMTP 服务器发送电子邮件的代码,但这并不意味着电子邮件可以正常发送。
我想知道你们是否都遇到过 SMTP 服务器的端到端测试:
从 SMTP 向另一台服务器发送测试电子邮件
检索该电子邮件
大概电子邮件中会有一个 ID,如果定期这样做,发送的电子邮件可以连接到收到的电子邮件。
显然,这确实是在测试两台服务器的正常运行时间以及两者之间的 inet 连接,除非 SMTP 服务器向自己发送了一封电子邮件。
我的方法是在远程 SMTP 服务器上配置一个帐户来自动回复邮件。在主题行中放置一个唯一值,以便您可以识别返回的消息(如时间戳)并发送消息。
使用脚本从本地服务器上的邮箱中弹出消息,回复进入并读取唯一值(或使用 IMAP 读取消息;两者都可以)。
如果您使用时间戳,那么很容易衡量往返花费的时间。
如果您的 ping 消息丢失或无法在合理的时间内 return 重新生成您的 ping 消息,您将需要一种机制。
如果您不想走往返路线,请发送您的消息并使用 POP/IMAP 从您发送消息的帐户读取消息。这更容易做到。 -瑞克