Повторное получение почты
Материал из 1GbWiki.
Версия 22:52, 29 марта 2008 (править) Dmach (Обсуждение | вклад) м ← К предыдущему изменению |
Текущая версия (14:17, 24 марта 2010) (править) (отменить) Rin (Обсуждение | вклад) м |
||
(5 промежуточных версий не показаны.) | |||
Строка 1: | Строка 1: | ||
== Описание проблемы == | == Описание проблемы == | ||
- | В ряде случаев может возникнуть проблема повторного получения почты, когда вы вдруг получаете письма когда-то уже полученные. Проблема может возникнуть в случае выполнения следующих условий: | + | В ряде случаев может возникнуть проблема повторного получения почты, когда вы вдруг получаете письма когда-то уже полученные. Проблема описанная ниже может возникнуть в случае выполнения следующих условий: |
* Для получения почты в настройках почтовой программы у вас используется протокол [http://tools.ietf.org/html/rfc1939 POP3] и установлена галочка "Оставлять сообщения на сервере" | * Для получения почты в настройках почтовой программы у вас используется протокол [http://tools.ietf.org/html/rfc1939 POP3] и установлена галочка "Оставлять сообщения на сервере" | ||
Строка 8: | Строка 8: | ||
== Техническое описание == | == Техническое описание == | ||
- | Для POP3 протокола есть две команды получения списка писем на сервере: LIST и UIDL, все они возвращают список в котором для каждого письма указан порядковый номер и идентификатор. Различия этих команд в том, что UIDL обязан | + | Для POP3 протокола есть две команды получения списка писем на сервере: LIST и UIDL, все они возвращают список в котором для каждого письма указан порядковый номер и идентификатор. Различия этих команд в том, что UIDL обязан возвращать уникальный идентификатор письма а LIST - не обязан. List предназначена для идентификации писем в рамках текущего подключения к почтовому серверу, UIDL - для идентификации писем на протяжении всего времени. |
- | Почтовый клиент | + | Почтовый клиент запоминает идентификатор и в будущем не получает письма с известным ему идентификатором. К сожалению, в почтовом сервере используемом на хостинге 1Gb.ua имеется ошибка, которая приводит к тому, что уникальные идентификаторы писем выдаваемые командой UIDL после перехода на зимнее либо летнее время меняются. Таким образом почтовый клиент видит для старых писем новый идентификатор и считает, что письмо новое и, следовательно, его нужно получить. |
- | + | == Предыдущие данные == | |
- | + | К сожалению, ранее мы ошибочно полагали что проблема происходит из-за использовании некоторыми почтовыми клиентами идентификаторов возвращаемых по команде LIST в качестве уникальных (что, без сомнения является неправильным поведением), а наш почтовый сервер ошибки не содержит. Эти данные были ошибочны, дополнительные исследования показали, что проблема именно в почтовом сервере. | |
- | + | Мы приносим извинения за ошибочную информацию. | |
- | == | + | == Пути решения проблемы == |
- | + | Специалисты компании прилогают все имеющиеся усилия, что бы решить эту проблему в ближайшем будущем. К сожалению, диалог с разработчиками используемого ПО почтового сервера по данной проблеме может иметь длительный характер и мы пока не можем назвать точных сроков решения проблемы. | |
+ | |||
+ | Тем не менее уже сейчас есть несколько обходных путей решения проблемы: | ||
* Ничего не делать - вы можете просто удалить повторно полученные письма, в следующий раз такая ситуация возникнет через 6 месяцев, что достаточно большой срок. Вы так же можете уменьшить в почтовой программе время хранения письма на сервере, в этом случае при следующем переводе часов вы получите меньше дублей. | * Ничего не делать - вы можете просто удалить повторно полученные письма, в следующий раз такая ситуация возникнет через 6 месяцев, что достаточно большой срок. Вы так же можете уменьшить в почтовой программе время хранения письма на сервере, в этом случае при следующем переводе часов вы получите меньше дублей. | ||
- | * Отказаться от хранения писем на сервере. | + | * Отказаться от хранения писем на сервере, это так же повысит скорость работы почтовой программы с ящиком, так как ей не нужно будет предварительно получать и обрабатывать весь список писем в ящике. |
* Использовать дополнительные услуги работы с почтовым ящиком. Если же вам важно иметь доступ в почтовый ящик с множества компьютеров вы можете применить альтернативные методы работы | * Использовать дополнительные услуги работы с почтовым ящиком. Если же вам важно иметь доступ в почтовый ящик с множества компьютеров вы можете применить альтернативные методы работы | ||
** IMAP-протокол позволяет работать с почтовым ящиком без получения писем | ** IMAP-протокол позволяет работать с почтовым ящиком без получения писем | ||
- | *** На хостинге 1Gb. | + | *** На хостинге 1Gb.ua вы можете включить расширенный режим IMAP для почтовых ящиков, который сможет повысить стабильность работы сервиса IMAP |
** Создать отдельный ящик для каждого места откуда вы работаете с почтой и дублировать всю входящую почту на эти ящики | ** Создать отдельный ящик для каждого места откуда вы работаете с почтой и дублировать всю входящую почту на эти ящики | ||
- | *** На хостинге 1Gb. | + | *** На хостинге 1Gb.ua этой цели служат "Списки рассылки" (ссылка доступна в полном списке фукнций) |
- | ** Воспользоваться услугой хостинга почты на почтовом сервере Microsoft Exchange, посмотрите [http://www.1gb. | + | ** Воспользоваться услугой хостинга почты на почтовом сервере Microsoft Exchange, посмотрите [http://www.1gb.ua/services_exchange.php описание услуги] |
+ | |||
+ | == Демонстрация проблемы == | ||
+ | |||
+ | Ниже приводится лог примера работы с почтовым ящиком до и после изменения времени на сервере. Обратите внимание на уникальные идентификаторы писем, возвращаемы по коменде UIDL | ||
+ | |||
+ | Было: | ||
+ | |||
+ | C:\>telnet pop3-2.1gb.ua 110 | ||
+ | +OK <-810598293.20752@mail-u4-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-u4-boxes.in-solve.hidden Server closing down. | ||
+ | |||
+ | C:\>time | ||
+ | The current time is: 1:43:24,82 | ||
+ | |||
+ | После: | ||
+ | |||
+ | C:\>telnet pop3-2.1gb.ua 110 | ||
+ | +OK <-807558809.2230@mail-u4-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-u4-boxes.in-solve.hidden Server closing down. | ||
+ | |||
+ | C:\>time | ||
+ | The current time is: 3:35:34,37 | ||
+ | |||
+ | [[Категория:Почта]] |
Текущая версия
Содержание |
[править] Описание проблемы
В ряде случаев может возникнуть проблема повторного получения почты, когда вы вдруг получаете письма когда-то уже полученные. Проблема описанная ниже может возникнуть в случае выполнения следующих условий:
- Для получения почты в настройках почтовой программы у вас используется протокол POP3 и установлена галочка "Оставлять сообщения на сервере"
- С момента последнего получения почты был переход на летнее либо зимнее время
[править] Техническое описание
Для POP3 протокола есть две команды получения списка писем на сервере: LIST и UIDL, все они возвращают список в котором для каждого письма указан порядковый номер и идентификатор. Различия этих команд в том, что UIDL обязан возвращать уникальный идентификатор письма а LIST - не обязан. List предназначена для идентификации писем в рамках текущего подключения к почтовому серверу, UIDL - для идентификации писем на протяжении всего времени.
Почтовый клиент запоминает идентификатор и в будущем не получает письма с известным ему идентификатором. К сожалению, в почтовом сервере используемом на хостинге 1Gb.ua имеется ошибка, которая приводит к тому, что уникальные идентификаторы писем выдаваемые командой UIDL после перехода на зимнее либо летнее время меняются. Таким образом почтовый клиент видит для старых писем новый идентификатор и считает, что письмо новое и, следовательно, его нужно получить.
[править] Предыдущие данные
К сожалению, ранее мы ошибочно полагали что проблема происходит из-за использовании некоторыми почтовыми клиентами идентификаторов возвращаемых по команде LIST в качестве уникальных (что, без сомнения является неправильным поведением), а наш почтовый сервер ошибки не содержит. Эти данные были ошибочны, дополнительные исследования показали, что проблема именно в почтовом сервере.
Мы приносим извинения за ошибочную информацию.
[править] Пути решения проблемы
Специалисты компании прилогают все имеющиеся усилия, что бы решить эту проблему в ближайшем будущем. К сожалению, диалог с разработчиками используемого ПО почтового сервера по данной проблеме может иметь длительный характер и мы пока не можем назвать точных сроков решения проблемы.
Тем не менее уже сейчас есть несколько обходных путей решения проблемы:
- Ничего не делать - вы можете просто удалить повторно полученные письма, в следующий раз такая ситуация возникнет через 6 месяцев, что достаточно большой срок. Вы так же можете уменьшить в почтовой программе время хранения письма на сервере, в этом случае при следующем переводе часов вы получите меньше дублей.
- Отказаться от хранения писем на сервере, это так же повысит скорость работы почтовой программы с ящиком, так как ей не нужно будет предварительно получать и обрабатывать весь список писем в ящике.
- Использовать дополнительные услуги работы с почтовым ящиком. Если же вам важно иметь доступ в почтовый ящик с множества компьютеров вы можете применить альтернативные методы работы
- IMAP-протокол позволяет работать с почтовым ящиком без получения писем
- На хостинге 1Gb.ua вы можете включить расширенный режим IMAP для почтовых ящиков, который сможет повысить стабильность работы сервиса IMAP
- Создать отдельный ящик для каждого места откуда вы работаете с почтой и дублировать всю входящую почту на эти ящики
- На хостинге 1Gb.ua этой цели служат "Списки рассылки" (ссылка доступна в полном списке фукнций)
- Воспользоваться услугой хостинга почты на почтовом сервере Microsoft Exchange, посмотрите описание услуги
- IMAP-протокол позволяет работать с почтовым ящиком без получения писем
[править] Демонстрация проблемы
Ниже приводится лог примера работы с почтовым ящиком до и после изменения времени на сервере. Обратите внимание на уникальные идентификаторы писем, возвращаемы по коменде UIDL
Было:
C:\>telnet pop3-2.1gb.ua 110 +OK <-810598293.20752@mail-u4-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-u4-boxes.in-solve.hidden Server closing down. C:\>time The current time is: 1:43:24,82
После:
C:\>telnet pop3-2.1gb.ua 110 +OK <-807558809.2230@mail-u4-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-u4-boxes.in-solve.hidden Server closing down. C:\>time The current time is: 3:35:34,37