Два периода позволяются в локальной части адреса электронной почты?

Это собирается звучать резким, возможно, это, но для этого ожидаемого уровня использования необходимо использовать a-person/people для разработки масштабируемости.

Для запуска необходимо удостовериться кэширование правильных типов данных в правильных местах в цепочке. Необходимо удостовериться, что это безопасно, эластично и приемлемо. Необходимо рассмотреть установку SAN, сценарии отказа, потоки трафика, точки повышения пропускной способности, стратегию удобства обслуживания, резервное копирование и системы DR - и их вещи, о которых я могу думать от вершины моей головы.

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

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

13
задан 5 June 2012 в 18:33
2 ответа

Да, вы правы. В процитированном вами разделе говорится, что это должна быть строка в кавычках ИЛИ точка-атом. Поскольку это явно не строка в кавычках (отсутствие включения " проясняет это) , это должна быть точка-атом ...

Это приводит нас к определению точки -atom:

Посмотрите на это, кроме RFC 5322 (3.2.3 - стр. 13) (RFC 2822 содержит аналогичный раздел) подсказка - 1 * in dot-atom-text = 1 * atext * ("." 1 * atext) . Фактически это означает, что точка-атом состоит из строк из одного или нескольких символов "atext", разделенных точками • Строка из 0 символов текста не учитывается, поэтому у вас не может быть двух последовательных точек (разделенных символами 0) или начальной или конечной точки.

RFC 5322                Internet Message Format             October 2008


   atext           =   ALPHA / DIGIT /    ; Printable US-ASCII
                       "!" / "#" /        ;  characters not including
                       "$" / "%" /        ;  specials.  Used for atoms.
                       "&" / "'" /
                       "*" / "+" /
                       "-" / "/" /
                       "=" / "?" /
                       "^" / "_" /
                       "`" / "{" /
                       "|" / "}" /
                       "~"

   atom            =   [CFWS] 1*atext [CFWS]

   dot-atom-text   =   1*atext *("." 1*atext)

   dot-atom        =   [CFWS] dot-atom-text [CFWS]

   specials        =   "(" / ")" /        ; Special characters that do
                       "<" / ">" /        ;  not appear in atext
                       "[" / "]" /
                       ":" / ";" /
                       "@" / "\" /
                       "," / "." /
                       DQUOTE
13
ответ дан 2 December 2019 в 21:25

Ваша интерпретация верна. Локальная часть может содержать группы текста, разделенные точками, но несколько последовательных точек не допускаются.

Согласно раздел 3.4.1 RFC 5322 , который вы цитировали в своем вопросе, атом точки " не содержит символов, кроме символов текста или ".", Окруженных символами текста ". Следовательно, по определению, точечный атом не может содержать двух или более последовательных точек.

Для справки, вот определение atext, взятое из раздела 3.2.3 RFC 5322 :

atext           =       ALPHA / DIGIT / ; Any character except controls,
                        "!" / "#" /     ;  SP, and specials.
                        "$" / "%" /     ;  Used for atoms
                        "&" / "'" /
                        "*" / "+" /
                        "-" / "/" /
                        "=" / "?" /
                        "^" / "_" /
                        "`" / "{" /
                        "|" / "}" /
                        "~"

Конечно, Никакие два MTA не применяют RFC одинаково, поэтому вы обнаружите, что некоторые MTA будут принимать двойные периоды, а другие - нет. Например, Exchange откажется от доставки для адресов, содержащих двойные точки,

4
ответ дан 2 December 2019 в 21:25

Теги

Похожие вопросы