Что такое IDN?
Internationalized domain names (IDNs) или интернационализированные доменные имена - это доменные имена, которые написаны на языках или шрифтах, в которых используются латинские буквы с диакритическими знаками (знаки ударения, такие как é или ü) или которые вообще не используют латинский алфавит (вроде кириллических доменов). IDN позволяют получить доступ к сайту, используя родной язык в адресной строке 👍
При этом сами браузеры могут воспринимать только ограниченный набор символов в адресе сайта (латинские буквы + небольшое количество символов), потому тут нас выручает Punycode.
Что такое Punycode?
Punycode - это способ представления IDN через ограниченный набор символов (A-Z, 0-9), который распознаётся браузерами.
Как это работает: в браузере Вы набираете мой.сайт
, браузер незаметно для Вас конвертирует это в Punycode и в результате в адресной строке Вы видите домен на кириллице:
А если Вы скопируете адрес из адресной строки и вставите в документе или любом текстовом поле, то увидите, что мой.сайт
превращается в http://xn--i1afg.xn--80aswg/
.
Посмотреть, как домен с нелатинскими символами будет выглядеть в Punycode можно на этом сайте.