如何在 php 中无限制地发送数千封电子邮件?
How can I send thousands of emails without limits in php?
我有一个网站,每天早上都会发送时事通讯。
但这不是定期的时事通讯,每封电子邮件都有不同的内容,具体取决于用户帐户。
现在我使用一个名为 PHPMailer 的 class,它工作得很好,它满足了我的需要。但为此,我使用 Gmail 帐户进行身份验证。问题是,与任何其他电子邮件服务一样,Gmail 也有其每日发送限制。
事实上,它只发送前 2000 封电子邮件。
我怎样才能克服这个问题?我的服务是免费的,我没有钱支付任何额外服务,我只有我的(专用)服务器。
(ubuntu 12.04, lamp 堆栈)
提前致谢,抱歉我的英语不好。
您可以创建一个脚本来限制给定时间段内发送的电子邮件数量。例如,每分钟 20 封电子邮件等于一小时内发送 1200 封电子邮件,并且低于您的服务限制。 (大多数共享服务器还限制每小时发送电子邮件)。在这种情况下,"script" 应该 运行 浏览器页面保持打开状态,因为它会在给定时间发送新请求。 (例如,查看 Joomla Cms 的 acymailing 扩展)
另一种选择是 cronjobs。
How to send emails via cron job usng PHP mysql
将您的服务器配置为邮件服务器,这样您就可以根据需要发送任意数量的邮件,而无需依赖外部服务器。
如果您 运行 拥有自己的服务器并发送合法电子邮件,则您可以发送的电子邮件数量没有实际限制。您无需为每封邮件支付费用,并且现在几乎所有垃圾邮件过滤都是由用户对他们的邮件所做的操作来完成的 - 因此,如果他们表现得好像您正在发送他们想要的东西(即他们阅读但不标记)作为垃圾邮件),您将不会遇到送达问题。
毫无疑问,发送大量电子邮件的服务器必然会被列入黑名单,但如果新服务器突然开始发送大量邮件通常被认为是可疑的,因此最好慢慢增加它, and/or 将您的发送分散到多个 IP。
我有使用 PHPMailer 发送大量邮件的自建站点 - 有时每天发送数百万 - 但您可能无法配置现成的服务器来执行此操作。 PHP 每秒可以发送数百条消息,这主要取决于您的模板系统。
虽然你必须对你的配置完全偏执:
- 设置严格的 SPF
- 使用 DKIM 签名
- 配置 DMARC
- 您不能使用 BCC 发送个性化消息
- 不要发送附件
- 保持消息小,link内容大
- 确保您的邮件服务器 DNS 记录可以双向解析
- 确保你有良好的弹跳处理能力(在 PHP 中很难)
- 使用 VERP 寻址(有助于退回处理)
- 监控您的邮件服务器队列
- 立即处理任何退订、垃圾邮件报告或黑名单
- 始终、始终 对新订阅使用双重选择加入
- 从不使用买入名单
当你使用 ESP 时,所有这些基本上都是你要付费的,虽然他们经常会试图告诉你其他情况,但没有什么能阻止你自己做这一切——俗话说,它是免费的只要你的时间没有价值!
正如其他人所提到的,RSS 或通知可以让您减少需要通过电子邮件发送的数量。
我有一个网站,每天早上都会发送时事通讯。
但这不是定期的时事通讯,每封电子邮件都有不同的内容,具体取决于用户帐户。
现在我使用一个名为 PHPMailer 的 class,它工作得很好,它满足了我的需要。但为此,我使用 Gmail 帐户进行身份验证。问题是,与任何其他电子邮件服务一样,Gmail 也有其每日发送限制。
事实上,它只发送前 2000 封电子邮件。
我怎样才能克服这个问题?我的服务是免费的,我没有钱支付任何额外服务,我只有我的(专用)服务器。
(ubuntu 12.04, lamp 堆栈)
提前致谢,抱歉我的英语不好。
您可以创建一个脚本来限制给定时间段内发送的电子邮件数量。例如,每分钟 20 封电子邮件等于一小时内发送 1200 封电子邮件,并且低于您的服务限制。 (大多数共享服务器还限制每小时发送电子邮件)。在这种情况下,"script" 应该 运行 浏览器页面保持打开状态,因为它会在给定时间发送新请求。 (例如,查看 Joomla Cms 的 acymailing 扩展)
另一种选择是 cronjobs。 How to send emails via cron job usng PHP mysql
将您的服务器配置为邮件服务器,这样您就可以根据需要发送任意数量的邮件,而无需依赖外部服务器。
如果您 运行 拥有自己的服务器并发送合法电子邮件,则您可以发送的电子邮件数量没有实际限制。您无需为每封邮件支付费用,并且现在几乎所有垃圾邮件过滤都是由用户对他们的邮件所做的操作来完成的 - 因此,如果他们表现得好像您正在发送他们想要的东西(即他们阅读但不标记)作为垃圾邮件),您将不会遇到送达问题。
毫无疑问,发送大量电子邮件的服务器必然会被列入黑名单,但如果新服务器突然开始发送大量邮件通常被认为是可疑的,因此最好慢慢增加它, and/or 将您的发送分散到多个 IP。
我有使用 PHPMailer 发送大量邮件的自建站点 - 有时每天发送数百万 - 但您可能无法配置现成的服务器来执行此操作。 PHP 每秒可以发送数百条消息,这主要取决于您的模板系统。
虽然你必须对你的配置完全偏执:
- 设置严格的 SPF
- 使用 DKIM 签名
- 配置 DMARC
- 您不能使用 BCC 发送个性化消息
- 不要发送附件
- 保持消息小,link内容大
- 确保您的邮件服务器 DNS 记录可以双向解析
- 确保你有良好的弹跳处理能力(在 PHP 中很难)
- 使用 VERP 寻址(有助于退回处理)
- 监控您的邮件服务器队列
- 立即处理任何退订、垃圾邮件报告或黑名单
- 始终、始终 对新订阅使用双重选择加入
- 从不使用买入名单
当你使用 ESP 时,所有这些基本上都是你要付费的,虽然他们经常会试图告诉你其他情况,但没有什么能阻止你自己做这一切——俗话说,它是免费的只要你的时间没有价值!
正如其他人所提到的,RSS 或通知可以让您减少需要通过电子邮件发送的数量。