在我的开发机器上,我有一种特殊的 SMTP 服务器在非标准端口上运行,用于测试目的。
在我的虚拟机上,我尝试使用 Exim4 的 sendmail 应用程序将消息推送到该 SMTP 服务器:
selenium-node$ sendmail -t
To: [email protected]:2525
From: [email protected]
Subject: Test message
Quick brown fox jumps over the lazy dog
selenium-node$
但是,看起来 my-development-machine.testingnetwork.local:25 上的默认 SMTP 服务器改为接收我的消息。
有没有一种干净自然的方式来做我正在尝试的事情?修改 my-selenium-node.testingnetwork.local 上的一些配置是没有问题的。
SMTP始终使用 TCP/25,除非邮件传递代理(这里,
sendmail
由 Exim 实现)被专门配置为将邮件发送到某个自定义端口。无法像在与邮件传递代理对话的邮件用户代理的 URL 中那样设置端口。因此,选项仅限于重新配置 Exim 以发送到不同的端口或使用其他一些邮件发送程序将邮件定向到其他地方,例如ssmtp
配置ssmtp.conf
然后将消息传送到
ssmtp
. 另一种选择是使用某种编程语言的 SMTP 客户端模块;这些可能支持发送到任意 TCP 端口。