2

网站的日常维护通常涉及验证链接是否有效、标记不良链接等。

我知道如何通过脚本匹配电子邮件地址(尤其是在mailto:链接中的网页上下文中)。我的问题是如何在不发送垃圾邮件地址的情况下验证它们是否正常?

剥离域并验证它正在侦听端口 25 是部分答案,但不处理验证用户名/别名。

有没有办法将此添加到我管理的网站的维护脚本中?

我真的不在乎它是用什么语言写的,只要它有效:)

4

4 回答 4

8

SMTP 曾经有一个“VRFY”命令,它询问服务器是否认为用户名有效。现在每个人都将其关闭,以防止垃圾邮件。

过去也可以开始发送电子邮件,“MAIL FROM:...”,“RCPT TO:...”,如果地址不存在,接收服务器会在 RCPT TO 之后立即通知您好的。那也不管用了。

这是一种冗长的说法,“不,我认为没有办法做到这一点,而无需实际发送电子邮件。”

于 2009-02-02T20:08:37.550 回答
3

同意Jay的观点:为完成这项特定工作而构建的所有漂亮功能通常都被关闭......

唯一的方法是向该地址发送电子邮件;即便如此,你也不是 100% 确定的。

  • 该地址可能是垃圾;没有人检查它。
  • 邮箱已满(暂时?)并且您获得了 DSN
  • SMTP 服务器故障/中断

恕我直言,继续检查域(如果您不想被列入黑名单,请轻松连接)和反垃圾邮件工具(如 akismet/spamhaus)来过滤用户提交的内容。

于 2009-02-02T20:25:12.883 回答
1

这取决于您需要它的准确程度,因为较早的答案表明您可以通过脚本使用 SMTP 服务器接口。那么它只是如此准确,即使您发送电子邮件,它也可能永远不会 100% 准确,一些 SMTP 服务器可能会接受该电子邮件,但随后将其丢弃,或者某些电子邮件地址可能未使用,但仍接受邮件。

手工无法替代,您只能通过自动化达到一定的信心水平,而不是 100%。

于 2009-02-02T20:21:01.817 回答
0

一个更好的方法是等到你有一封正常的电子邮件发送到订阅列表,并在其中包含一个请求,要求任何想要留在列表中的人在合理的时间内填写表格。之后,您可以假设没有回复的人不再需要任何邮件并将其删除。

于 2009-02-02T20:16:58.033 回答