J'écris un Regex pour valider l'e-mail. La seule chose qui me déroute est:
Est-il possible d'avoir un seul caractère pour le nom de domaine de premier niveau? (par exemple: lockevn.c )
Contexte: je savais que le nom de domaine de premier niveau peut contenir de 2 caractères à n'importe quoi (.uk, .us à . Canon , .museum). J'ai lu certains documents mais je n'arrive pas à comprendre si cela autorise 1 caractère ou non.
Il est techniquement possible, cependant, il n'y a pas de TLD à un seul caractère qui ont été acceptés dans la racine (pour le moment), donc la réponse est:
Oui , il c'est possible d'avoir un seul caractère pour le nom de domaine de premier niveau, cependant , il n'y a actuellement aucun TLD à un seul caractère à la racine.
Vous pouvez voir la liste des TLD qui sont actuellement à la racine à cette URL:
La RFC-952 montre ce qu'est un "nom", cela inclut ce qui est valide en tant que domaine de premier niveau:
A "name" (Net, Host, Gateway, or Domain name) is a text string up
to 24 characters drawn from the alphabet (A-Z), digits (0-9), minus
sign (-), and period (.).
De plus, la grammaire de RFC-952 montre:
<name> ::= <let>[*[<let-or-digit-or-hyphen>]<let-or-digit>]
La section 2.1 de la RFC-1123 a spécifiquement autorisé les domaines et sous-domaines à lettre unique, changeant la grammaire initiale de RFC-952 de commencer avec juste une lettre à être plus détendu, donc maintenant vous êtes autorisé à avoir des domaines de premier niveau à lettre unique qui sont un nombre:
2.1 Host Names and Numbers
The syntax of a legal Internet Host name was specified in RFC-952.
One aspect of Host name syntax is hereby changed: the
restriction on the first character is relaxed to allow either a
letter or a digit. Host software MUST support this more liberal
syntax.
EDIT: Selon le commentaire de @ mr.spuratic, la section 2 de la RFC-3696 a resserré les règles pour les domaines de premier niveau, en déclarant:
There is an additional rule that essentially requires
that top-level domain names not be all-numeric.
Cela signifie que:
Un test très non scientifique de cela montre que si j'ajoute "a
" dans mon fichier hosts
pointant vers ma machine locale, aller à http://a
dans ma barre d'adresse affiche ma page d'accueil Apache.