Система доменных имен, которая выполняет службу поиска для преобразования удобных для пользователя имен в сетевые адреса для поиска ресурсов Интернета, на практике ограничена 1 использованием символов ASCII, что является практическимограничение, которое первоначально устанавливало стандарт для допустимых доменных имен.
(см .: https://en.wikipedia.org/wiki/Internationalized_domain_name)
Как говорится в статье, домены, которые мы используем каждый день, технически ограничены символами ASCII, чтобыПоддержка большего количества символов. Домены Unicode кодируются в так называемый Punycode
(см. RFC: https://www.ietf.org/rfc/rfc3492.txt)
. Посещение веб-сайта с умлаутом (или подобным) заставит браузер закодировать это. Например, http://öbb.at преобразуется в http://xn - bb-eka.at . Преобразованная форма называется ASCII-совместимым кодированием (ACE) и состоит из четырехсимвольного префикса (xn--) и представления punycodeсимволов Unicode. Подробнее см. здесь ...
Чтобы разобрать его, вы можете посмотреть:
Punycode JS on GitHub
Решение от некоторых - StackOverflow