Допустима довжина адреси електронної пошти

Depositphotos 1948865 с

Мені довелося сьогодні копати, щоб знайти його, але чи знаєте ви, яка дійсна довжина адреси електронної пошти? Це насправді розбито на частини ... Name@Domain.com. Це згідно з RFC2822.

  1. Ім'я може складати від 1 до 64 символів.
  2. Домен може містити від 1 до 255 символів.

Ого ... це означає, що це може бути дійсна електронна адреса:


loremaipsumadolorasitaametbaconsectetueraadipiscin
gaelitanullamc @ loremaipsumadolorasitaametbaconsect
etueraadipiscingaelitcaSedaidametusautanisiavehicu
laaluctuscaPellentesqueatinciduntbadiamaidacondimn
tumarutrumbaturpisamassaaconsectetueraarcubaeuatin
ciduntaliberoaaugueavestibulumaeratcaPhasellusatin
ciduntaturpisaduis.com

Спробуйте помістити це на візитну картку! Як не дивно, але в Інтернеті більшість полів адрес електронної пошти мають до 100 символів. Це насправді не дійсне. Якщо ви хочете перевірити адресу електронної пошти для належного побудови за допомогою PHP, я знайшов цей фрагмент у мережі:

http://derrick.pallas.us/email-validator/ # Ліцензія: Академічна безкоштовна ліцензія 2.1 # Версія: 2006-12-01a if (! ereg (''. '^'. '[-! # $% & \ '* + / 0-9 =? AZ ^ _a-z {|} ~]'. '(\\.? [-! # $% & \' * + / 0-9 =? AZ ^ _a-z { |} ~]) * '.' @ '.' [a-zA-Z] (-? [a-zA-Z0-9]) * '.' (\\. [a-zA-Z] (- ? [a-zA-Z0-9]) *) + '.' $ ', $ email)) return false; list ($ local, $ domain) = split ("@", $ email, 2); if (strlen ($ local)> 64 || strlen ($ domain)> 255) повертає false; if ($ check &&! gethostbynamel ($ domain)) return false; повернути істинно; # END ######}

9 Коментарі

  1. 1
  2. 2

    Так, я помітив відсутність відповідності інших рішень RFC. Однак я помітив, що навіть цей регулярний вираз є нетиповим і не є стандартним. Я пам’ятаю, що читання фактичного регулярного виразу (дозволяючи <,>, тощо) є занадто інтенсивним для більшості процесів.

    Однак це написано стисло і, безумовно, рішення, яке має бути прийнятним для будь-якої корпоративної програми електронної пошти.

    Знову дякую!
    Doug

  3. 3

    На жаль, я пов’язав цю сторінку з неправильним RFC (2821 замість 2822), але це було виправлено. Кутові дужки не можуть бути частиною локальної або доменної частин адреси електронної пошти; швидше, вони представляють точки токенізації, тобто їх можна використовувати для оточення адреси електронної пошти (наприклад, у вашому поштовому програмі читання) саме тому, що вони не можуть бути частиною адреси.

    Одна річ, яку моя функція не робить, - це турбуватися про форму електронних адрес із цитуваннями - там, де локальна частина відображається у подвійних лапках, - тому що RFC2821 по суті говорить, що нікому ніколи не слід писати свою адресу таким чином. (Я вважаю, що форма призначена для зворотної сумісності, і зараз це погана практика.)

  4. 4
  5. 5

    У RFC 2821 є обмеження на довжину адреси в командах MAIL та RCPT у 256 символів. Зазвичай верхньою межею довжин адрес слід вважати 256.

    - Джерело: RFC 3696 Errata

    Крім того, оскільки RFC 2181 говорить “Повне доменне ім’я обмежено 255 октетами”, воно неодноразово неправильно трактується людьми (включаючи автори інших RFC) як таке, що доменні імена можуть мати 255 символів. Але RFC2181 говорить про представлення на дроті рівня протоколу DNS, а не про друковані символи.

    Максимальна довжина доменного імені становить 253 символів (254, включаючи кінцеву крапку, 255 октетів на дроті з закінчуючим нулем). І саме це впроваджують BIND та DiG.

  6. 6

    Розробники, недооцінюючи потенційні розміри адрес електронної пошти, спричинили кілька проблем: http://www.eph.co.uk/resources/email-address-le...

    Думаю, якщо ваша електронна адреса - щось крихітне, наприклад “jack1983@aol.com”, ви можете подумати, що навіть 30 символів є щедрими.

  7. 7

    Вибачте, вказана вище URL-адреса порушена ...

    Розробники, недооцінюючи потенційні розміри адрес електронної пошти, спричинили кілька проблем:

    http://www.eph.co.uk/resources/email-address-leng...

    Думаю, якщо ваша електронна адреса - щось крихітне, на зразок "jack1983@aol.com", ви можете подумати, що навіть 30 символів є щедрими.

  8. 8

Що ви думаєте?

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.