在php中使用SMTP在php mail()和sendmail()之间执行逻辑

在php中使用SMTP在php mail()和sendmail()之间执行逻辑,php,Php,php mail()、sendmail()和在php中使用SMTP之间的主要逻辑是什么 我们为什么要创造noreply1@domain.com, noreply2@domain.com,... 等等这有什么问题吗 我们正在建立通讯管理,我们尝试每天至少发送6000封邮件。我们的域名位于专用服务器中 我们试图每天发送10000封邮件 哪一个是最好的解决方案 我试用了swiftmailer,它发送了4封邮件,但因错误消息而停止 “由于连接错误,无法发送消息” 有一段时间,它发送了100并停止了 问题

php mail()、sendmail()和在php中使用SMTP之间的主要逻辑是什么

我们为什么要创造noreply1@domain.com, noreply2@domain.com,... 等等这有什么问题吗

我们正在建立通讯管理,我们尝试每天至少发送6000封邮件。我们的域名位于专用服务器中

我们试图每天发送10000封邮件

哪一个是最好的解决方案

我试用了swiftmailer,它发送了4封邮件,但因错误消息而停止

“由于连接错误,无法发送消息”

有一段时间,它发送了100并停止了


问题可能是什么?是编码问题还是服务器问题

mail()
不使用SMTP;它将邮件的实际发送委托给
sendmail
二进制文件,因此您必须在系统上正确配置MTA才能使其工作。

mail()
不使用SMTP;它将邮件的实际发送委托给
sendmail
二进制文件,因此您必须在系统上正确配置MTA才能使其工作。

我认为您的第一个操作应该是检查您正在使用的SMTP服务器(我假设您正在使用SMTP)是否有任何发送限制。然后,向您的ISP/提供商询问他们是否有任何类型的垃圾邮件检测,以防止发送大量电子邮件

如果您使用的不是SMTP,而是
mail()
,请切换到SMTP。Mail()为每封发出的邮件打开一个新连接,不建议发送更多邮件


如果没有其他帮助,可以将电子邮件拆分为更小的作业,使服务器更容易消化,和/或在发送每封邮件之间增加几百毫秒的暂停时间

我认为您的第一个操作应该是检查您正在使用的SMTP服务器(我假设您正在使用SMTP)是否有任何发送限制。然后,向您的ISP/提供商询问他们是否有任何类型的垃圾邮件检测,以防止发送大量电子邮件

如果您使用的不是SMTP,而是
mail()
,请切换到SMTP。Mail()为每封发出的邮件打开一个新连接,不建议发送更多邮件

如果没有其他帮助,可以将电子邮件拆分为更小的作业,使服务器更容易消化,和/或在发送每封邮件之间增加几百毫秒的暂停时间

PHP中没有sendmail()函数

我试用了swiftmailer,它发送了4封邮件,但因错误消息而停止 “由于连接错误,无法发送邮件”

可能不是代码错误。最可能的情况是,您正在使用的SMTP服务器已被限制,以防止用于批量电子邮件发送。你问过你的服务器提供商/SMTP管理员吗

解决方案是运行SMTP服务器

C.

PHP中没有sendmail()函数

我试用了swiftmailer,它发送了4封邮件,但因错误消息而停止 “由于连接错误,无法发送邮件”

可能不是代码错误。最可能的情况是,您正在使用的SMTP服务器已被限制,以防止用于批量电子邮件发送。你问过你的服务器提供商/SMTP管理员吗

解决方案是运行SMTP服务器


C.

并有一些错误恢复策略。失败始终是一个选项,您的脚本必须处理它。如果他在本地拥有邮件服务器,则每封邮件的一个连接不是真正的问题(相反,这可能是一个优势,因为并非所有内容都会因为连接断开一次而失败)。但这可能会成为性能问题,当整个系统因发送请求而过载时。并且有一些错误恢复策略。失败始终是一个选项,您的脚本必须处理它。如果他在本地拥有邮件服务器,则每封邮件的一个连接不是真正的问题(相反,这可能是一个优势,因为并非所有内容都会因为连接断开一次而失败)。但这可能会成为性能问题,当整个系统因发送请求而过载时。