@ “Happy@guy.com” e-posta adresi geçerli bir e-posta adresi mi?


5

Bu yorum beni RFC 5322 § 3.4.1'e götürdü :

An addr-spec is a specific Internet identifier that contains a locally
interpreted string followed by the at-sign character ("@", ASCII value
64) followed by an Internet domain. 

The locally interpreted string is either a quoted-string or a dot-atom.

If the string can be represented as a dot-atom (that is, it contains no
characters other than atext characters or "." surrounded by atext  
characters), then the dot-atom form SHOULD be used and the quoted-  
string form SHOULD NOT be used.  Comments and folding white space   
SHOULD NOT be used around the "@" in the addr-spec.

Ve burada ne atextolduğunu görebiliriz .

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

Bunları bir araya getirmek, e-posta adresinin email@"happy@guy.com"aslında geçerli bir adres olduğu anlamına mı geliyor , çünkü alıntılar @sembolün kullanımına izin veriyor ?

Yanıtlar:


11

Hayır geçerli değil.

@Etki alanından sonraki bölüm (örnekte "happy@guy.com").

@Sembolü olan bir alan adınız olamaz .

Etki alanı adı için geçerli karakterler nelerdir ve ne kadar olabilir?

Ayrıca RFC 1035 2.3.1'e bakın :

Bir harfle başlamalı, bir harf veya rakamla bitmeli ve yalnızca iç karakter olarak harfler, rakamlar ve kısa çizgiler kullanmalıdırlar .

Daha fazla bilgi:


İlginç. Harfler, rakamlar ve kısa çizgiler, hepsidir atext. Peki, ne tür bir etki alanı 3.4.1'de belirtildiği gibi tırnak işareti gerektirir?
Cory Klein

Ah, sanırım yanlış okudum. Tırnak söz ederken metnin bahsediyor önce@ işaret ve etki. Öyleyse belki "email@email"@happyguy.com geçerli bir e-posta adresidir?
Cory Klein

1
Alan adıyla ilgili RFC 5322'den: "Not: Burada, addr-spec'in domain kısmı için liberal bir sözdizimi verilmiştir. Bununla birlikte, domain kısmı, diğer protokollerde belirtilen ve kullanılan (örneğin, [RFC1034], [RFC1035] ], [RFC1123], [RFC5321]) Bu nedenle, kullanıldıkları bağlam için adreslerin sözdizimine uymak için yapılan uygulamalarda görevlidir. "
Ƭᴇcʜιᴇ007

1
genel olarak Wikipedia'nın açıklamaları RFC'lerden biraz daha az şifrelidir. Çıkış en.wikipedia.org/wiki/E-mail_address#Local_part
Ƭᴇcʜιᴇ007

2
Bazen bu sorunu çözebilirsiniz, çünkü e-posta adresi girişi yanlış doğrulayıcı gerçek web sayfasındadır ve ardından hatalı bir şekilde doğrulayan komut dosyasını düzenlemek için firebug veya webcarab gibi şeyler kullanabilirsiniz. Yine de can sıkıcı bir durum.
Hennes

2

E-posta kuralları çok şaşırtıcı derecede karmaşıktır (ve nadiren tamamen doğru şekilde takip edilir), bir e-postanın geçerli olup olmadığını sormak özellikle yararlı değildir. Aksine, kaç web sitesinin e-postanızı kabul edeceği sorusudur. Bir e-posta adresi ne kadar egzotikse , RFC standardında olsa bile, onu kabul etmeyen web sitelerine girme ihtimaliniz o kadar yüksektir . Örneğin my.email@com, teknik olarak geçerli bir e-posta var, ancak onu kullanmak için zor bir zamanınız olacak.

Son kullanıcıysanız, bunun anlamı genellikle çok yaratıcı olamayan e-postaları seçebilmeniz olsun ya da olmasın demektir. Kuralları zorlayan bir e-postayla gelmek, teknik olarak geçerli olsa bile, bazı web sitelerinin kullanımını zorlaştırabilir.

Yazılımı sürdürüyorsanız ve bir kullanıcının e-postasını doğrulamanız gerekiyorsa, en iyi seçeneğiniz ona bir doğrulama e-postası göndermektir. Bu şekilde, kullanıcının e-posta adresinin, e-postaları RFC standartlarına uymayan ya da e-postaları en son koşul kurallarına uymayan kullanıcıları yanlışlıkla engelleme endişesi duymadan gerçekten var olup olmadığını kontrol edebilirsiniz. (Kullanıcıların yazım hatalarını düzeltmelerine yardımcı olmak için müşteri tarafı doğrulamasında bazı sağduyulu kurallar kullanmaya değer, ancak kullanıcıların gerektiğinde bu doğrulamayı geçersiz kılmasına izin vermelisiniz.)

StackOverflow'un bu sorusu sorunları oldukça iyi tartışıyor. Buna değer, bu web sitesi , e-postaların gerçekten geçerli olup olmadığını kontrol etmenizi sağlar. Sayfadaki ikinci yorum, ne kadar olağandışı olduğu için kullanımı zor olan geçerli bir e-posta adresi olan birine bir örnek verir.


Asıl sorunuzu cevaplamak için: Hayır, email@"happy@guy.com"geçerli bir e-posta adresi değil. Öyle olsa bile, onu kullanmama konusunda dikkatli olurdum ve bir kullanıcı onun e-postası olduğunu iddia ederse, yine de ona bir doğrulama e-postası göndermelisiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.