Codeigniter. Возможно, ваш сервер не настроен на отправку почты с использованием этого метода.Невозможно отправить письмо, используя PHP SMTP - PullRequest
0 голосов
/ 19 сентября 2018

Это работало на моем живом сервере до того, как внезапно перестал отправлять электронные письма.Вот ошибка, которую я получил:

220 smtp30.relay.iad3a.emailsrvr.com ESMTP - Раздел кода VA 18.2-152.3: 1 запрещает использование этой системы для нежелательной массовой электронной почты (спам) привет:250-smtp30.relay.iad3a.emailsrvr.com 250 ENHANCEDSTATUSCODES Не удалось отправить команду AUTH LOGIN.Ошибка: 554 5.7.1 проверка подлинности ограничена (Z1E / 233FC14) с: 554 5.7.1 проверка подлинности ограничена (Z1E / 233FC14) Обнаружена следующая ошибка SMTP: 554 5.7.1 проверка подлинности ограничена (Z1E / 233FC14) до: 503 5.5.1Неверная последовательность команд Обнаружена следующая ошибка SMTP: 503 5.5.1 Неверная последовательность данных команд: 503 5.5.1 Неверная последовательность команд Обнаружена следующая ошибка SMTP: 503 5.5.1 Неверная последовательность команд 221 2.7.0 Ошибка:Я тоже могу нарушать правила.Прощай.Обнаружена следующая ошибка SMTP: 221 2.7.0 Ошибка: я тоже могу нарушать правила.Прощай.Невозможно отправить письмо, используя PHP SMTP.Возможно, ваш сервер не настроен для отправки почты с использованием этого метода.

Если я запускаю его на локальном сервере, он отправляет электронную почту.Я даже попытался изменить порты на 587, и я все еще получил ошибку, и она не отправляет.В чем будет проблема в моем коде.Спасибо!

Вот мой код:

$from = "no-reply@sample.com";
$from_name = "Daily logs";

$config['smtp_host']    = 'ssl://secure.sample.com';
$config['smtp_user']    = 'no-reply@sample.com';
$config['smtp_pass']    = ********;
$config['smtp_port']    = '465';

$config['protocol']     = 'smtp';

$config['mailtype']     = 'html';
$config['validate']     = 'FALSE';
$message                = $email_message['html'];


$CI->email->initialize($config);
$CI->email->from($from, $from_name);
$CI->email->to($email_message['to']);
$CI->email->subject("Sample - ".$email_message['subject']);

$path=$_SERVER["DOCUMENT_ROOT"];
$file = $path.'/tmp/sample_data/sample_data_'.strtotime(date("y-m-d", strtotime('-1 day'))).'.csv';
$CI->email->attach($file);

$CI->email->message($message);
if(@$CI->email->send()){
     $return = (object) array('http_response_code' => 200); 
}
else{
     echo $CI->email->print_debugger();
}

1 Ответ

0 голосов
/ 19 сентября 2018

проверьте, пишется ли ваша конфигурация

$config['smtp_host']    = 'ssl://secure.sample.com';
$config['smtp_user']    = 'no-reply@sample.com';
$config['smtp_pass']    = ********;

Я думаю, вы можете попробовать эти точки с помощью gmail, а затем перейти к своей собственной конфигурации только для проверки вашего кода, это нормально.иногда сервер может не позволить вам, так что не тратьте время.ссылки для Gmail SMTP Отправка электронной почты с помощью SMTP-сервера GMail со страницы PHP и Отправка электронной почты с SMTP Gmail с библиотекой электронной почты codeigniter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...