Содержание |
В ряде случаев может возникнуть проблема повторного получения почты, когда вы вдруг получаете письма когда-то уже полученные. Проблема описанная ниже может возникнуть в случае выполнения следующих условий:
Для POP3 протокола есть две команды получения списка писем на сервере: LIST и UIDL, все они возвращают список в котором для каждого письма указан порядковый номер и идентификатор. Различия этих команд в том, что UIDL обязан возвращать уникальный идентификатор письма а LIST - не обязан. List предназначена для идентификации писем в рамках текущего подключения к почтовому серверу, UIDL - для идентификации писем на протяжении всего времени.
Почтовый клиент запоминает идентификатор и в будущем не получает письма с известным ему идентификатором. К сожалению, в почтовом сервере используемом на хостинге 1Gb.ru имеется ошибка, которая приводит к тому, что уникальные идентификаторы писем выдаваемые командой UIDL после перехода на зимнее либо летнее время меняются. Таким образом почтовый клиент видит для старых писем новый идентификатор и считает, что письмо новое и, следовательно, его нужно получить.
К сожалению, ранее мы ошибочно полагали что проблема происходит из-за использовании некоторыми почтовыми клиентами идентификаторов возвращаемых по команде LIST в качестве уникальных (что, без сомнения является неправильным поведением), а наш почтовый сервер ошибки не содержит. Эти данные были ошибочны, дополнительные исследования показали, что проблема именно в почтовом сервере.
Мы приносим извинения за ошибочную информацию.
Специалисты компании прилогают все имеющиеся усилия, что бы решить эту проблему в ближайшем будущем. К сожалению, диалог с разработчиками используемого ПО почтового сервера по данной проблеме может иметь длительный характер и мы пока не можем назвать точных сроков решения проблемы.
Тем не менее уже сейчас есть несколько обходных путей решения проблемы:
Ниже приводится лог примера работы с почтовым ящиком до и после изменения времени на сервере. Обратите внимание на уникальные идентификаторы писем, возвращаемы по коменде UIDL
Было:
C:\>telnet pop3-7.1gb.ru 110 +OK <-810598293.20752@mail-s14-boxes.in-solve.hidden>, POP3 server ready. user uXXXX +OK uXXXX is known here. pass ********** +OK Welcome! 3 messages (40965 bytes) list +OK 3 messages, 40965 bytes 1 1773 2 1078 3 3768 . uidl +OK unique IDs follow... 1 30QD7OI.CNM387D5A29 2 4CBM8WM.CNM387D7E4E 3 57O1W56.CNM387DCA95 . quit +OK mail-s14-boxes.in-solve.hidden Server closing down. C:\>time The current time is: 1:43:24,82
После:
C:\>telnet pop3-7.1gb.ru 110 +OK <-807558809.2230@mail-s14-boxes.in-solve.hidden>, POP3 server ready. user uXXXX +OK uXXXX is known here. pass ********** +OK Welcome! 3 messages (40965 bytes) list +OK 3 messages, 40965 bytes 1 1773 2 1078 3 3768 . uidl +OK unique IDs follow... 1 30QD7OI.CNM387D6229 2 4CBM8WM.CNM387D864E 3 57O1W56.CNM387DD295 . quit +OK mail-s14-boxes.in-solve.hidden Server closing down. C:\>time The current time is: 3:35:34,37