这个问题的子结构可能比 Java 更广泛,它可能适用于所有 Jelastic 部署。但我将介绍 Java。
第一步应该是检查应用程序的依赖关系,正如 OP 链接到的帖子中所解释的那样。OP 解释说他们让应用程序进行测试/开发,但我再次提到这是 Java 部署错误的常见来源。
其次,Jelastic 不提供邮件传输应用程序(Java Mail 使用该应用程序进行投递)。所以 Jelastic 主机上提供的任何 MTA 都是由底层操作系统提供的。当然,大多数服务器都会有这样的规定,但可能会因主机而异。
这对我来说很有意义,因为邮件传输是一项单独的服务。如果 Jelastic 提供邮件传输,则期望将控制为单独/可监控/可收费的插件。但是缺少这样的插件意味着发送邮件的应用程序依赖于主机的底层配置(......但看下来一点)。这种缺乏传输可能是合乎逻辑的,但是,它与共享服务器的普遍期望相反。
我接下来的评论适用于 Layershift 的 Jelastic 实现,但我希望其他 Jelastic 主机配置大致相同。
- 您有跟踪帐户和 IPv4 吗?
除非您有付费帐户和静态 IP 地址,否则不会启用 Layershift 的 MTA。就这么简单。
- Layershift 的 MTA 配置
仅适用于端口 25,并且没有 SSL。
如果 OP 使用的是 Layershift 或具有类似软件堆栈的 Jelastic 主机,这就是为什么只有端口 25 可以工作的原因。这种缺乏规定是为什么显然成功传递的邮件从未转发到服务器(OP 不可能知道这一点)。
我发现只提供端口 25 限制。作为反垃圾邮件措施,一些 SMTP 服务器会打开其他端口。但是,我自己在 Layershift 的支持下完成了这项工作,似乎他们的提供并没有受到限制,而只是粗略的。向前...
Layershift 明确表示不依赖底层传输(仅用于测试)。他们指出,电子邮件来源将来自他们的上游公共 IP,该 IP 不用于邮件,因此不会满足例如反垃圾邮件检查。他们的立场是,交易电子邮件的发送最好由一种新的外部服务来处理,例如,
Mailjet、山魈、Sendgrid
(对不起,我不能发布这些链接)
请注意,其中一些服务对低使用率是免费的。
同样,这在提供服务方面很有意义,但与普遍预期相反。
最后,如果您有非常专业的需求,Jelastic 已经启用了一些代码来运行您自己的电子邮件服务器。这似乎与 OP 的需求背道而驰 - 太多的麻烦和维护,但如果这是目的,
Jelastic - 运行您自己的邮件服务器
希望有帮助。