PHPMailer с Outlook365 — ограничение размера imap_append 7 КБ

У меня есть настройка PHPMailer для использования нашего сервера Outlook365 для отправки электронных писем с вложениями. Прекрасно работает до скрипта, используя imap_append, пытается добавить сообщение в нашу «отправленную» папку. Я обнаружил, что если размер вложения превышает 7 КБ, он не работает. Меньше чем 7 КБ, это работает. Получатель получает вложение в любом случае.

Есть идеи, откуда исходит это ограничение и как я могу его увеличить?

Вот блок кода для сохранения сообщений в отправленную папку.

function save_mail($mail) {
global $config;
$MailHost = "{".$config->MailHost."/imap/ssl/novalidate-cert}Sent Items";
$path = $MailHost;
if ($conn = imap_open($path, $config->MailUsername, $config->MailPassword)) {
if (imap_append($conn, $path, $mail->getSentMIMEMessage())) {
$result = true;
} else {
error_log("ERROR: Unable to save mail to 'Sent Items' folder.\n  - " . imap_last_error());
$result = false;
}
imap_close($conn);
return $result;
} else {
error_log("ERROR: Unable to connect to IMAP server.");
return false;
}

}

0

Решение

Из моего сегодняшнего тестирования, если при отправке на сервер IMAP на основе Exchange с вложением или встроенным изображением размером более 7 КБ вам потребуется изменить возврат строки с формата Unix на формат Windows. Я просто заменил строку на ‘\ n’ и заменил на ‘\ r \ n’, чтобы сделать это.

$content =  str_replace("\n", "\r\n", $mail->getSentMIMEMessage());
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector