1m后脚本损坏,状态失败,使用AWS SES发送电子邮件时PHP-Apache

电子以色列

环境(共享主机):

Apache版本2.4.41

PHP版本7.0.1

VersiónMySQL 10.0.38-MariaDB-cll-lve

PHPMailer 6.1.4

我正在通过PHPMailer使用AWS SNS SMTP服务发送电子邮件,-所有配置都很好-,我进行了测试并且工作良好(1或2条消息),因此,在生产中,我每5分钟发送100条电子邮件( (不是垃圾邮件),但1m后便中断了。我在日志和屏幕上都没有收到任何错误消息,我只能在控制台中看到在正文为空1m之后脚本已损坏。(下图)

图片空白

笔记

  1. 如果我每次仅发送50条电子邮件,则脚本不会损坏。

  2. 如果我运行以下脚本:

for($i = 1; $i < 131; $i++){
  echo $i.'<br>';
  sleep(1);
}

我得到:

错误500请求超时此请求处理时间太长,服务器已将其超时。如果不应该超时,请联系该网站的管理员以增加“连接超时”。

2m后

  1. 我在脚本中有以下配置
error_reporting(E_ALL);
ini_set("display_errors", 1);
ini_set('memory_limit', '-1');
ini_set('max_execution_time', 12000);
ignore_user_abort(TRUE);
ini_set("default_socket_timeout", 6000);
  1. 我在下面的代码 .htaccess
php_value default_socket_timeout 6000
TimeOut 6000

我尝试了此处提到的更改但没有用。

电子以色列

最后,在搜索了很多选项之后,我找到了解决方案。该解决方案是关于Litespeed的特殊配置。

.htaccess在根目录中添加了所有请求

RewriteRule .* - [E=noabort:1]
RewriteRule .* - [E=noconntimeout:1]

在不超时的情况下运行PHP-Litespeed Doc

本文收集自互联网,转载请注明来源。

如有侵权,请联系 javae[email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章