Outlook отображает сообщения в кодировке KOI-8

Outlook 2010 не правильно отображает кодировку сообщений.

Иногда пользователи жалуются на то, что в полученных сообщениях появляются «кракозябры», некорректно отображаемые символы. На самом деле Outlook показывает содержимое письма в кодировке KOI-8, как будто это кодировка Windows 1251. Для устранения проблемы  можно  изменить кодировку в сообщении на KOI-8, но  к сожалению,  не все пользователи знают про эту возможность  и заваливают службу HelpDesk звонками. Причиной такого поведения Outlook является ошибка в Microsoft Exchange Server 2010.

Она возникает при совпадении четырех условий:

  1. Версия Exchange Server 2010 SP1 RU3 или более поздняя.
  2. К сообщению приложен файл.
  3. Тема сообщения содержит русские кавычки — ёлочки   ( « » ) .
  4. Тело сообщения на русском языке в кодировке KOI8-R.

С одной стороны вероятность совпадения всех условий довольно низка, с другой стороны, резюме в компании или приглашения на курсы рассылаются именно таким способом. Создается письмо, в тему добавляется в кавычках-ёлочках название позиции или курса обучения и прикладывается резюме или описание курса. Получатель получит «поврежденное» сообщение.

Даже если  установить внутри организации кодировку  по умолчанию UTF-8 и тогда проблема исчезнет для пользователей огранизации Exchange, но если письмо поступит из Интернета в кодировке KOI-8 одному пользователюи и будет переслано другому пользователю вашей организации, то кодировка этого письма останется KOI-8 и получатель все равно увидит «кракозябры» в письме.

Данная проблема решена в Exchange Server 2010 Service Pack 2 Rollup 1. Более детально о проблеме можно почитать на сайте Микрософт.

Связанные записи:


, , , ,

  • Pavel Nagaev

    [img]http://www.exchangefaq.ru/wp-content/uploads/2012/02/mini.jpg[/img]

  • Скилов Владимир

    Обсуждение темы:
    http://social.technet.microsoft.com/Forums/ru-RU/exchange2010ru/thread/428565d8-0367-45fc-8ead-be1fd676c277
    http://social.technet.microsoft.com/Forums/ru/msoclientru/thread/307123c1-a75b-4c54-8109-cfc5ae274e86

    PS: Опытным путём было установлено, что сам Exchange переделывал заголовки письма, всегда выставляя кодировку win-1251.

    Методика проверки:
    — Ставим в лабе Exchange 2010 SP2, настраиваем SMTP-коннекторы на отправку;
    — Отправляем письмо на внешний SMTP с доступом к серверу через POP3;
    — Забираем отправленное письмо любым клиентом, с возможностью посмотреть заголовки письма;
    — Смотрим заголовки письма — кодировка win-1251, вне зависимости от реальной кодировки. 
    Реально проблема скорее всего в целом ряде факторов, а именно:
    — при добавление кавычек типа «ёлочка», которые кстати добавить не так просто, Outlook переделывает заголовок в кодировку win-1251, оставляя тело письма в старой кодировке;
    — Клиент получает письмо, читает заголовки, читает, что кодировка win-1251, проверяет тему — win-1251, значит письмо нужно отображать в win-1251

      Но реально тело в koi-8, UTF-8 и т.д.

  • Pavel Nagaev

    Outlook при форварде писем кодировку не переделывает, даже если в нем политикой прописано. Отсюда и проблема, что письмо снаружи форвардится сотрудникам внутри, в него добавляется файл и опа — кракозябры.

  • Скилов Владимир

    Речь была про корень проблемы, а именно: исконно некорректное формирование заголовков на уровне Exchange. Если быть точнее, то он по шаблону «ляпал» всем письмам на кирилице win-1251.

    Остальное лишь следствия, проявления бага.

  • Clericos

    А какую кодировку вообще луче использовать в Exchange Server?
    интересует «Best Practices», а не теория (в теории видимо лучше UTF-8) в котором наименьшее количество проблем у пользователей
    win-1251? KOI8-r? UTF-8?
    заранее спасибо

    • Pavel Nagaev

      «Best Practices» это как раз кодировка, которая работает с большинством клиентов, с которыми обмениваюся электронной почты сотрудники вашей компании.
      В моей компании установлена UTF-8.
      У MS я таких рекомендаций не встречал.

  • Айрат

    А я уже и rollup 2 поставил, но проблема опять всплыла неожиданно. Директор форвардит письма из gmail, приходят кракозябры в теле. Похоже что ему приходят письма в win-1251, при пересылке от него в заголовках написано KOI8-R, а в outlook в свойствах письма стоит UTF-8. Если кракозябры проверить в декодере Лебедева, то показывает путь win-1251 — utf-8.

    • Pavel Nagaev

      Посмотрите, в теме точно нет кавычек ёлочек или знака № ?

  • Айрат

    Нет, нет кавычек и №. Нагуглил, что у устройств Apple есть глюк с кракозябрами, когда форвардят письмо через gmail-аккаунт, то получатели такого письма видят бяку, у директора как раз ipad. Буду по советам настраивать gmail-аккаунт по imap.

  • Pavel Nagaev

    Айрат, киньте ссылки сюда, пожалуйста. Хочу глянуть.

  • Айрат
    • Pavel Nagaev

      С Iphone/Ipad не все просто, там есть еще глюки, причем со стороны Apple. Это все к вопросу поддерживаемости и совместимости.

  • Павел Нагибин

    Подскажите пожалуйста, вы говорите про кодировку по умолчанию, вы имеете ввиду кодировку для исходящих писем?

    • Pavel Nagaev

      да

  • Павел Нагибин

    Спасибо

  • Виктор

    У меня Exchange 2010 ru 14.03.0158.001на SBS 2011
    Этот апдейт не устанавливается — говорит, что для другой версии.
    У клиента настроил Outlook 2007 на отправку писем в кодировке UTF8 — вроде теперь нормально уходит..

  • http://vk.com/id272909362 Алексей Бармашов

    Проблема наблюдается и на 2016 сервере…привет из 2018)

    • pnagaev

      Хм, вроде никто не жалуется. То есть Вы можете эту проблему воспроизвести? Тогда версия CU 2016 какая?

      • http://vk.com/id272909362 Алексей Бармашов

        Да, уже не один случай зафиксирован, везде эти долбанные ёлки присутствуют. CU10 сейчас, а вообще с 2003 наш Exchange, не чистая система. Воспроизвести не удалось, со всеми условиями, возможно что-то не учел.