кодировка данных post в Usenet

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

кодировка данных post в Usenet

Сообщение Proxy » 24.01.2014 (Пт) 4:21

Доброго времени суток.

Столкнулся с проблемой на одном сайте. Как-то давно хостер что-то поменял в конфигурации сервера и функция mail стала отправлять письма, изменяя кодировку (корректно приходит, если в additional_headers указать UTF-8, а в $subject и $to передавать данные в 1251, а изначально данные в UTF-8). Т.е. smtp сервер хостера из win-1251 в UTF-8 перекодирует независимо ни от чего.

С тех.специалистом хостинга связаться не удалось (всё время просили перезвонить позже в течение 3 дней).

Связаться с разработчиком тоже не вышло (да и денег требует обычно несопоставимо с качеством работы).

Для подстраховки убрал из subject кириллицу (если вдруг вернут как было, чтобы не возникло кракозябр), указал в additional_headers использование quoted-printable, стал передавать в $to данные в UTF-8 кодированные в quoted-printable (перекодировка на стороне хостера перестала как-либо влиять на данные). Всё работало до некоторых пор нормально.
Но теперь многие письма стали приходить в Usenet формате. Сначала таких писем были единицы, теперь их становится всё больше.
Где-либо на странице использование Usenet в отправляемых через post данных не указано.

Приходят данные такого вида:
begin 644 webutils_pl
MT)?0M-&`T+#0LM&!T++1@]"YT8+0M2X-"M"=T+70NM"^T8+0OM&`T8O0N2#1
M@M"UT8'1@BX-"M"A(-"CT++0L-"VT+70O="XT+70O"P@T+K1@M"^+=&"T+XN
`
end
Ни один используемый почтовый клиент их не поддерживает, приходится декодировать каждое письмо не самым простым путём (такие перенаправляют мне, я исправляю и отправляю назад, иногда это занимает время).
Если бы то происходило на стороне хостера, то каждое письмо было бы искажено. Если на стороне пользователей сайта, то явно это какой-то один браузер (но точно не FF, не Opera и не Chrome, проверял). И явно он набирает популярность.

Кто-нибудь ещё сталкивался? Почему браузер решает кодировать данные в Usenet?

PS. Чуть позже добавлю к телу письма данные о браузере, если иначе не получится никак. Ну или организую логирование куда-нибудь в файл или в базу.
PPS. В примере я указал begin 644 (кодировал первым попавшим под руку инструментом), но нам в письмах приходят они под заголовком begin 666 ИМЯ_СТРАНИЦЫ_С_ФОРМОЙ.htm, а не begin 644.

UPD. Похоже я что-то путаю. Кодируется всё сообщение целиком, которое формируется на стороне сервера. Видимо проблема с хостингом (а то, что не все письма приходят в usenet формате — это по какой-то неясной причине, но не связанной прямо с браузером).
Follow the white rabbit.

Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11

    TopList