Я давно слышал от друга, что если вы используете кодировку UTF-8 для отправки электронных писем, символы будут искажены. Недавно я разработал для своей компании многоязычный веб-сайт, который использовал кодировку UTF-8. На веб-сайте есть регистрация участников, форма запроса и другие модули, с помощью которых необходимо отправлять электронные письма зарегистрированным пользователям или администраторам. Я думал, что неизбежно столкнусь с проблемой искаженного кода.
Странно то, что проект продвигается гладко, хотя китайский текст в электронном письме действительно будет искажен при просмотре на веб-странице. Однако это нормально, если вы просматриваете его локально после использования Outlook или Foxmail. Ха, может быть, это тот самый искаженный код, на который указал мой друг? Казалось, что проблема несерьезная, поэтому я залил сайт на сервер и передал на тестирование другой группе.
На следующий день, пока я неторопливо слушал музыку и читал статьи, мой коллега сообщил, что полученные мной электронные письма будут искажены. Я был шокирован и сразу же попробовал его. Конечно же, после того, как я получил его в Foxmail и открыл, знак вопроса все еще оставался. Я поискал в Google, чтобы узнать, сталкивался ли кто-нибудь с такой же проблемой, но ничего не нашел. После этого я долго заходил на форум dimc.net (официальный сайт Jmail), но не мог решить проблему. Кажется, мне придется полагаться на себя. . .
После двух часов постоянного изменения кода на сервере для отправки писем для тестирования проблема не улучшилась.
Итак, я начал искать различия между локальным компьютером и сервером. Сначала я обнаружил, что версия jmail несовместима, поэтому я обновил версию jmail сервера. неверный. Я чувствую, что проблема не в программе веб-сайта или компоненте Jmail. Чтобы определить причину проблемы, содержимое, назначенное Jmail, было выведено до отправки электронного письма. Разумеется, содержимое электронного письма здесь было искажено. Моя операционная система установлена на упрощенном китайском языке, а на сервере установлена английская версия. Попробуйте выбрать китайский язык в разделе «Дополнительно», «Язык программы, не поддерживающий Юникод», в параметрах региона и языка. После перезапуска сервера проблема окончательно решена.