编程语言
首页 > 编程语言> > php – 如何每周发送100,000封电子邮件?

php – 如何每周发送100,000封电子邮件?

作者:互联网

如何在PHP中每周向100,000个用户发送电子邮件?这包括使用以下提供商向订阅者发送邮件:

> AOL
> G-Mail
> Hotmail
>雅虎

重要的是,在可能的范围内实际发送所有电子邮件.显然,传统上发送邮件只会产生问题.

是否有一个PHP库使这更简单?

解决方法:

简短的回答:虽然技术上可以每周发送10万封电子邮件,但最简单,最简单和最便宜的解决方案是将其外包给其中一家专门从事它的公司(我说“最便宜”:没有限制在尝试DIY时你可以沉入其中的开发时间(以及钱).

答案很长:如果你决定自己绝对想要这样做,那么就要为受伤的世界做好准备(毕竟,这是我们所说的电子邮件/电子邮件失败).你需要:

>非垃圾邮件的电子邮件内容(否则您将在每一步都遇到其他主要障碍,甚至是法律后果)
>此外,您的内容应该很容易与垃圾邮件区分开来 – 在某些情况下可能有点难以做到(我听说某家制药公司除了放弃电子邮件外,其他所有品牌都很常见)垃圾邮件)
>您自己的可配置SMTP服务器,当您将100k电子邮件转储到它上时,它将不会收缩(您的ISP的上游服务器在这里是不够的,您将使ISP非常不满意;我们使用了两个专用的盒子)
>一些邮件包装器(例如PhpMailer,如果PHP是你选择的毒药;使用PHP的邮件()本身就太可怕了)
>你自己的发送者函数在循环中运行,创建邮件并将它们传递给包装器(请注意,如果你的应用程序有内存泄漏,你可能会遇到PHP的内存限制;你可能需要定期回收发送过程,甚至更好,完全解耦“创建电子邮件”和“发送电子邮件”

令人惊讶的是,这很容易.困难的部分实际上是发送它:

>当你把很多邮件靠近在一起时,有些服务器会禁止你,所以你需要随机播放并观察你的队列(例如发送一封邮件到joe@example.com,然后发送三封到其他域,然后另一封送到其他地址@ example. COM)
>你需要有正确的PTR, SPF, DKIM records
>处理远程服务器超时,配置错误的DNS记录和其他网络恳求
>处理无效的电子邮件(不,regex is the wrong tool for that)
>处理取消订阅(许多合法的简报已被重新归类为垃圾邮件,因为许多沮丧的用户无法一步取消订阅而是选择“标记为垃圾邮件” – 垃圾邮件过滤器确实可以学习,尤其是大型电子邮件提供商)
>处理退回和拒绝(“没有这样的邮箱ojhn@example.com”,“邮箱john@example.com已满”)
>处理黑名单和从黑名单中删除(当然,你不会发送垃圾邮件.有些收件人不会那么肯定 – 有这么大的清单,无论你采取什么预防措施,有时都会发生.有些人(例如你不是 – 如此苛刻的竞争对手)甚至可能会错误地将您的邮件报告为垃圾邮件 – 它确实会发生.平均而言,将自己从黑名单中移除需要数周时间.)

最重要的是,你必须管理它的法律部分(各种联邦,州和地方法律;甚至一旦你在美国境外发送的法律纠缠不同(注意:你无法找到是否是乔@ hotmail.com居住在西南Elbonia,这个国家拥有世界上最严厉的反垃圾邮件法律)).

我很确定我错过了这个九头蛇的几个头 – 你还确定你想要自己做吗?如果是这样的话,那将会有另一波浪潮,这次只是发送电子邮件时固有的恼人问题. (您看,SMTP是一种存储转发协议,这意味着您的电子邮件将在互联网上的许多SMTP服务器之间进行混洗,希望下一个服务器更接近最终收件人.基本上,电子邮件将发送到SMTP服务器,该服务器将其放入其转发队列;当时间到来时,它会将其进一步转发到其他SMTP服务器,直到它到达给定域的SMTP服务器.此转发可能立即发生,或者在几分钟,几小时,几天,或从不.)因此,您将看到以下问题 – 大多数问题可能发生在途中以及目的地:

>远程SMTP服务器不希望与SMTP服务器通信
>您的邮件被标记为垃圾邮件(< blink>不是您的朋友,也不是< font color = ...>)
>您的邮件是在几天甚至几周内交付的(与流行的观点相反,SMTP旨在尽最大努力在将来的某个时间传递消息 – 而不是现在提供它)
>您的邮件根本没有发送(已经从第4跳的电子邮件服务器发送,尚未从第5跳的服务器发送,当前保存邮件的服务器崩溃,数据丢失)
>你的邮件在途中被一些脑卒中服务器破坏了(这个可以用base64编码解决,但随后大小上升,电子邮件看起来更可疑)
>你的邮件已送达,收件人似乎不想要它们(“我确定我没有报名参加此活动,我记得我一年前所做的事情”(当然,你这样做,先生))
>具有各种版本的Microsoft Outlook及其特殊处理Internet邮件的用户
>向导的学徒模式(一个自我强化的正反馈循环 – 换句话说,自动电子邮件作为对自动电子邮件的回复,作为对……的回复;你真的不希望成为这样做的人,因为你对自己的互联网有一半的愤怒)

解决问题和解决问题将是你的工作(提示:你不能,大多数情况下).经营合法的群发邮件业务的人知道,最终你无法解决它,也无法解决它 – 并且他们有充分研究,记录和概述的原因(甚至可能作为Powerpoint演示文稿) – 完整的声音和酷的过渡 – 你的老板可以理解),因为他们不得不在此之前解释这一百万次.另外,对于实际可解决的问题,他们非常清楚如何解决这些问题.

毕竟,如果你没有气馁,仍然想要这样做,那么就去吧:你甚至可能找到一个更好的方法来做到这一点.只要知道前面的道路并不容易 – 发送电子邮件是微不足道的,交付它很难.

标签:email-integration,php,email,mailing-list,massmail
来源: https://codeday.me/bug/20190911/1803690.html