@sllugovskih

Codeigniter отправка нескольких сообщений не работает, почему?

Понадобилось внедрить в проект на CodeIgniter функцию отправки сообщений всем зарегистрированным пользователям. Отправка через SMTP работает без проблем для уведомлений на 1-2-3 ящика. Но если нужно сделать рассылку на 50+ адресов то появляются ошибки.

1) Message: fwrite(): SSL: Broken pipe
2) переодически Gateway Time-out

Кусок кода:

$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.mail.ru';
$config['smtp_port'] = '465';
$config['smtp_user'] = 'username';
$config['smtp_pass'] = '123456789';
$config['charset'] = 'utf-8';
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";
$config['mailtype'] = 'html';
$config['bcc_batch_mode'] = true;
$config['bcc_batch_size'] = 200;
$config['validate'] = true;

//в массиве $results - храняться 50+ email адресов
//в цикле отправляем письмо на каждый ящик
foreach ($results as $key => $result) {
	$this->email->clear();
	$this->email->initialize($config);
	$this->email->from('info@mysite.com', 'MYNAME');
	$this->email->to($result);
	$this->email->subject('Тема письма');
	$this->email->message('А тут сообщение');	

	$this->email->send();
}


Использую почту на домене Mail.ru SPF-запись настроена
  • Вопрос задан
  • 354 просмотра
Пригласить эксперта
Ответы на вопрос 1
@DuD
Самое простое, попробуйте добавить паузу между отсылками. Может вас просто по потоку режут.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы