Gültige Länge der E-Mail-Adresse

Depositphotos 1948865 s

Ich musste heute ein bisschen graben, um es zu finden, aber wussten Sie, wie lang eine E-Mail-Adresse ist? Es ist tatsächlich in Teile zerbrochen ... Name@Domain.com. Dies ist nach RFC2822.

  1. Der Name kann 1 bis 64 Zeichen lang sein.
  2. Die Domain kann 1 bis 255 Zeichen lang sein.

Wow… das bedeutet, dass dies eine gültige E-Mail-Adresse sein könnte:


loremaipsumadolorasitaametbaconsectetueraadipiscin
gaelitanullamc @ loremaipsumadolorasitaametbaconsect
etueraadipiscingaelitcaSedaidametusautanisiavehicu
laaluctuscaPellentesqueatinciduntbadiamaidacondimn
tumarutrumbaturpisamassaaconsectetueraarcubaeuatin
ciduntaliberoaaugueavestibulumaeratcaPhasellusatin
ciduntaturpisaduis.com

Versuchen Sie, das auf eine Visitenkarte zu kleben! Ironischerweise sind die meisten E-Mail-Adressfelder im Web auf 100 Zeichen beschränkt. Das ist eigentlich nicht gültig. Wenn Sie eine E-Mail-Adresse für die ordnungsgemäße Erstellung mit PHP überprüfen möchten, habe ich diesen Ausschnitt im Internet gefunden:

http://derrick.pallas.us/email-validator/ # Lizenz: Academic Free License 2.1 # Version: 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) gibt false zurück; if ($ check &&! gethostbynamel ($ domain)) gibt false zurück; return true; # ENDE ###### }

9 Kommentare

  1. 1
  2. 2

    Ja, ich habe festgestellt, dass auch andere Lösungen nicht mit dem RFC übereinstimmen. Mir ist jedoch aufgefallen, dass selbst dieser reguläre Ausdruck untypisch und nicht der Standard ist. Ich erinnere mich, dass das Lesen des tatsächlichen regulären Ausdrucks (Erlauben von <,> usw.) für die meisten Prozesse zu intensiv ist.

    Es ist jedoch prägnant geschrieben und definitiv eine Lösung, die für jede Unternehmens-E-Mail-Anwendung akzeptabel sein sollte.

    Danke noch einmal!
    Doug

  3. 3

    Leider habe ich diese Seite mit dem falschen RFC verknüpft (2821 statt 2822), aber das wurde korrigiert. Die spitzen Klammern dürfen nicht Teil der lokalen oder Domain-Teile einer E-Mail-Adresse sein. Sie stellen vielmehr Tokenisierungspunkte dar, dh sie können verwendet werden, um eine E-Mail-Adresse (z. B. in Ihrem E-Mail-Reader) zu umgeben, gerade weil sie nicht Teil der Adresse sein können.

    Eine Sache, die meine Funktion nicht tut, ist die Sorge um die zitierte Form von E-Mail-Adressen - wobei der lokale Teil in doppelten Anführungszeichen steht -, da RFC2821 im Wesentlichen besagt, dass niemand jemals seine Adresse so schreiben muss. (Ich glaube, das Formular dient der Abwärtskompatibilität und ist jetzt eine schlechte Praxis.)

  4. 4
  5. 5

    In RFC 2821 gibt es eine Einschränkung für die Länge einer Adresse in MAIL- und RCPT-Befehlen mit 256 Zeichen. Die Obergrenze für Adresslängen sollte normalerweise als 256 angesehen werden.

    - Quelle: RFC 3696 Errata

    Da in RFC 2181 angegeben ist, dass ein vollständiger Domainname auf 255 Oktette beschränkt ist, wird er von Personen (einschließlich der Autoren anderer RFCs) wiederholt falsch interpretiert, was bedeutet, dass Domainnamen 255 Zeichen lang sein können. In RFC2181 geht es jedoch um die Darstellung auf DNS-Protokollebene auf der Leitung, nicht um druckbare Zeichen.

    Die maximale Länge eines Domainnamens beträgt 253 Zeichen (254 einschließlich nachfolgender Punkte, 255 Oktette auf dem Draht mit der Endung Null). Und genau das setzen BIND und DiG um.

  6. 6
  7. 7
  8. 8

Was denken Sie?

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.