【问题标题】:How to determine if an email is successfully delivered instantly如何确定电子邮件是否立即成功发送
【发布时间】:2013-11-06 05:35:11
【问题描述】:

应用程序旨在安装在用户的计算机上,因此,应用程序的电子邮件功能在很大程度上取决于用户的 ISP 服务。端口 25 可能是打开的,也可能是被阻塞的。

当我使用包含端口 25 的邮件 ua 的标准代码时,它似乎可以传递电子邮件,但是,对于某些 ISP 阻止端口 25 的用户,电子邮件无法通过。我想有一种可靠的方法来确定端口 25 是否无法立即发送电子邮件,然后尝试使用另一个端口发送电子邮件。换句话说,我想利用两个端口,如果端口 X 发生故障,则自动切换到端口 Y。可行吗?

顺便说一句,我使用的 Web 服务器端脚本语言是 Adob​​e ColdFusion 的同胞 Railo,具体标签是 CFMAIL。如上所述,将 CFTRY 包裹在 CFMAIL 周围并没有帮助。

谢谢。

【问题讨论】:

    标签: coldfusion railo cfmail


    【解决方案1】:

    有多种因素决定您的消息是否被送达。

    1) 当您使用 CFMAIL 发送邮件时,您可以在 cfmail 标记中指定邮件服务器,也可以使用服务器默认值。当标签被执行时,coldfusion/railo 将尝试访问该服务器。如果服务器不可用或被阻止,您的消息将转到coldfusion/railo 无法投递文件夹。检查的唯一方法是编写一个脚本来监控无法传递的文件夹及其内容。

    2) 如果coldfusion/railo 成功连接到SMTP 服务器并尝试传递电子邮件,您的通知将来自SMTP 服务器而不是coldfusion/railo。消息将从 SMTP 服务器发送到 failto="" 路径,如果未指定,则发送到 from=""。该电子邮件将收到“邮箱不存在”、“不允许中继”、“用户超出邮箱限制”等通知。

    如果您需要监控这些退回邮件,您可以为 failto="" 创建一个单独的电子邮件帐户,并使用 CFPOP 监控电子邮件帐户的退回邮件。

    此外,如果您使用像 sendgrid 这样的公司作为外发 SMTP 服务器,他们将提供一个 API 来监控退回、退出、垃圾邮件投诉等......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-16
      • 2017-07-09
      • 1970-01-01
      • 2015-12-28
      • 1970-01-01
      • 2020-05-22
      • 2019-08-01
      • 2022-01-21
      相关资源
      最近更新 更多