Повторное получение почты

Материал из 1GbWiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 20:50, 30 октября 2007 (править)
81.177.24.112 (Обсуждение)
(Описание проблема)
← К предыдущему изменению
Версия 22:52, 29 марта 2008 (править) (отменить)
Dmach (Обсуждение | вклад)
м
К следующему изменению →
Строка 24: Строка 24:
* Ничего не делать - вы можете просто удалить повторно полученные письма, в следующий раз такая ситуация возникнет через 6 месяцев, что достаточно большой срок. Вы так же можете уменьшить в почтовой программе время хранения письма на сервере, в этом случае при следующем переводе часов вы получите меньше дублей. * Ничего не делать - вы можете просто удалить повторно полученные письма, в следующий раз такая ситуация возникнет через 6 месяцев, что достаточно большой срок. Вы так же можете уменьшить в почтовой программе время хранения письма на сервере, в этом случае при следующем переводе часов вы получите меньше дублей.
-* Отказаться от хранения писем на сервере. Если же вам важно иметь доступ в почтовый ящик с множества компьютеров вы можете применить альтернативные методы работы+* Отказаться от хранения писем на сервере.
 + 
 +* Использовать дополнительные услуги работы с почтовым ящиком. Если же вам важно иметь доступ в почтовый ящик с множества компьютеров вы можете применить альтернативные методы работы
** IMAP-протокол позволяет работать с почтовым ящиком без получения писем ** IMAP-протокол позволяет работать с почтовым ящиком без получения писем
*** На хостинге 1Gb.ru вы можете включить расширенный режим IMAP для почтовых ящиков, который сможет повысить стабильность работы сервиса IMAP *** На хостинге 1Gb.ru вы можете включить расширенный режим IMAP для почтовых ящиков, который сможет повысить стабильность работы сервиса IMAP
** Создать отдельный ящик для каждого места откуда вы работаете с почтой и дублировать всю входящую почту на эти ящики ** Создать отдельный ящик для каждого места откуда вы работаете с почтой и дублировать всю входящую почту на эти ящики
*** На хостинге 1Gb.ru этой цели служат "Списки рассылки" (ссылка доступна в полном списке фукнций) *** На хостинге 1Gb.ru этой цели служат "Списки рассылки" (ссылка доступна в полном списке фукнций)
 +** Воспользоваться услугой хостинга почты на почтовом сервере Microsoft Exchange, посмотрите [http://www.1gb.ru/services_exchange.php описание услуги]

Версия 22:52, 29 марта 2008

Содержание

Описание проблемы

В ряде случаев может возникнуть проблема повторного получения почты, когда вы вдруг получаете письма когда-то уже полученные. Проблема может возникнуть в случае выполнения следующих условий:

  • Для получения почты в настройках почтовой программы у вас используется протокол POP3 и установлена галочка "Оставлять сообщения на сервере"
  • С момента последнего получения почты был переход на летнее либо зимнее время

Техническое описание

Для POP3 протокола есть две команды получения списка писем на сервере: LIST и UIDL, все они возвращают список в котором для каждого письма указан порядковый номер и идентификатор. Различия этих команд в том, что UIDL обязан возвращять уникальный идентификатор письма а LIST - не обязан. List предназначена для идентификации писем в рамках текущего подключения к почтовому серверу, UIDL - для идентификации писем на протяжении всего времени.

Почтовый клиент запоманает идентификатор и в будущем не получает письма с известным ему идентификатором. Обычно, в почтовых серверах идентификатор для письма получаемый этими командами совпадает, то есть, обе команды возвращают уникальный идентификатор. Таким образом можно не заботится о том какую команду вы используете. К сожалению, почтовый сервер используемый на хостинге 1Gb.ru возвращает разные идентификаторы, при этом идентификаторы возвращаемые командой LIST постоянны в рамках текущей временной зоны, после изменения времени идентификаторы команды LIST меняются.

Таким образом, почтовые программы, использующие в процессе работы только команду LIST сталкиваются с проблемой того, что идентификаторы полученные ранее более недействительные и все письма в ящике имеют новые идентификаторы и значит нужно их снова получать.

Кто виноват

Никто не виноват. Просто сложилась такая ситуация связанная с расплывчатостью стандартов (которые на самом деле не стандарты а рекомендации) и сложившимися практиками программирования почтовых клиентов.

Что делать

Есть несколько путей решения проблемы:

  • Ничего не делать - вы можете просто удалить повторно полученные письма, в следующий раз такая ситуация возникнет через 6 месяцев, что достаточно большой срок. Вы так же можете уменьшить в почтовой программе время хранения письма на сервере, в этом случае при следующем переводе часов вы получите меньше дублей.
  • Отказаться от хранения писем на сервере.
  • Использовать дополнительные услуги работы с почтовым ящиком. Если же вам важно иметь доступ в почтовый ящик с множества компьютеров вы можете применить альтернативные методы работы
    • IMAP-протокол позволяет работать с почтовым ящиком без получения писем
      • На хостинге 1Gb.ru вы можете включить расширенный режим IMAP для почтовых ящиков, который сможет повысить стабильность работы сервиса IMAP
    • Создать отдельный ящик для каждого места откуда вы работаете с почтой и дублировать всю входящую почту на эти ящики
      • На хостинге 1Gb.ru этой цели служат "Списки рассылки" (ссылка доступна в полном списке фукнций)
    • Воспользоваться услугой хостинга почты на почтовом сервере Microsoft Exchange, посмотрите описание услуги
Личные инструменты