我正在使用一个自制的PHP脚本和PHPmailer来发送电子邮件,目前我只在MYSQL中执行一条select语句,然后通过一个for循环从PHPmailer运行一个100-150电子邮件发送请求。
我的问题是,我必须将这个脚本移植到7000个用户的邮件列表中,我知道它不会支持,因为发送到150需要大约8秒的执行时间-而且发送7000封电子邮件可能会将我标记为垃圾邮件发送者,否则我将无法处理所有回复。
我想把7000人分成200-500人一组,每天给每一组发一封电子邮件,直到每个人都发出去--为此,我必须编写一个PHP脚本来处理限制,并记住名单上的人什么时候还没有收到那封电子邮件,并将在下一批邮件中收到。
我的选择是什么,你的想法是什么?
发布于 2011-09-10 04:47:08
就我的两分钱。
1)我同意Dave re的观点:让它花的时间比它需要的更长。大多数黑名单/灰名单是收件人邮件服务器决定与通常相比,有一个奇数的流量。雅虎在这方面很糟糕,考虑到他们处理的域名数量太多,这可能会让人恼火。
2)使用多个IP地址无伤大雅。额外的IP通常是免费的,如果你正在使用exim,你可以很容易地将它配置为使用每个IP,例如EHLO,或发送到域等。这意味着来自任何一个IP的量更少。
3)跟踪回弹。有些供应商会跟踪尝试将邮件投递到不存在的地址的次数,您尝试的次数越多,看起来就越可疑。根据我的经验,跟踪它们的最简单方法是使用PHP并让VERP处理传入的数据。
4)设置反向DNS。如果您没有为发件人设置邮件,一些主机将忽略该邮件。我相信AOL就是一个例子。
这只是我的一些经验。
发布于 2011-09-10 04:11:22
您的第一种方法是一个非常好的想法。只要你同意花3分钟发送所有的电子邮件(如果你只发送每周的时事通讯或类似的东西,应该是这样的)。要减少被标记的垃圾邮件的机会,请降低阈值或使其花费更长时间。除此之外,转向托管的群发邮件服务可能是个好主意。
发布于 2011-09-10 04:28:02
发送7000封或更多电子邮件的行为不会让你被标记为垃圾邮件发送者~假设~你发送的邮件是:
你可能得到的唯一问题是阻塞你的邮件队列,但你的邮件数量仍然很低。我会说为了可伸缩性-将你的交付限制在大约一个小时左右。
考虑一下ceejayoz的建议"MailChimp“,它是免费的,每月最多5000封电子邮件,并且有一个出色的API,你可以在几个小时内将其集成到你的应用程序中。
-sean
https://stackoverflow.com/questions/7366905
复制相似问题