Разработано Российской рабочей группой по универсальному принятию, 2025

Рекомендации по созданию сайта с доменным именем и электронной почтой на кириллице:
этапы, проблемы и решения

Документ предназначен для владельцев и разработчиков сайтов, которые планируют использовать кириллическое доменное имя для адресации сайта и создания адресов электронной почты, а также предоставлять возможность пользователям указывать при взаимодействии с сайтом адреса электронной почты с символами национальных алфавитов.

Общие рекомендации по созданию сайта

На каждом этапе создания сайта необходимо осуществлять проверку корректности используемых кириллических доменных имен и адресов электронной почты, включая:

  • Проверку формата, длины и наличия допустимых символов в доменном имени или адресе электронной почты (в локальной и доменной части e-mail адреса);
  • Проверку на смешение скриптов (смешение кириллических и латинских символов в одной метке доменного имени не допускается).

С другими техническими рекомендациями по внедрению поддержки кириллических доменных имен и адресов электронной почты в программном обеспечении можно ознакомиться на сайте Российской рабочей группой по универсальному принятию.

Этап 1. Регистрация домена

В качестве адреса сайта может использоваться интернационализированное доменное имя, состоящее из кириллическим символов Юникод (далее по тексту - IDN домен). Регистрация доменных имен второго уровня на кириллице доступна в российских доменах верхнего уровня - .РФ1, . МОСКВА, .ДЕТИ, .SU и других. Услуги по регистрации доменных имен предоставляют специализированные компании - регистраторы. Список аккредитованных регистраторов публикуется на официальном сайте регистратуры соответствующего домена верхнего уровня.  

Возможные проблемы:

  • Не все регистраторы предоставляют услуги по подбору и регистрации IDN доменов с символами кириллицы.
  • Сообщение об ошибке при вводе IDN домена на сайте или в пользовательских интерфейсах регистратора.
  • Автоматическое преобразование IDN домена в кодировку Punycode (A-метку) 2 на сайте или в пользовательских интерфейсах регистратора.
  • Ограничение на использование в доменном имени символов нескольких алфавитов (при вводе доменного имени, состоящего из нескольких меток на кириллице и латинице, например, «вашдомен.su»).

Решения:

  • Выбирайте регистратора, который предоставляет соответствующие услуги по подбору и регистрации IDN доменов на кириллице. Ввод и отображение IDN доменов на сайте или в пользовательских интерфейсах регистратора должен осуществляться в кодировке Юникод3 (в виде U-метки), то есть символами кириллицы.
  • Если выбранный вами регистратор поддерживает ввод IDN домена только в кодировке Punycode, то необходимо заранее преобразовать кириллическое доменное имя при помощи инструмента IDN-конвертер4 и вводить его в виде A-метки.
  • Убедитесь, что доменное имя, которое вы планируете зарегистрировать, состоит из допустимых к регистрации символов и соответствует Правилам регистрации доменных имен выбранного вами домена верхнего уровня. Ознакомьтесь заранее с Правилами регистрации на сайте регистратуры соответствующего домена верхнего уровня.

2. Настройка DNS

Чтобы ваш сайт стал доступен в сети интернет по кириллическому доменному имени, вам необходимо его делегировать. Для делегирования доменного имени необходимо сообщить регистратору DNS сервера (первичный и вторичный). Вы можете использовать собственные DNS сервера или заказать соответствующие услуги у регистратора или хостинг провайдера.

Возможные проблемы:

  • Ограничение на ввод IDN домена в кодировке Юникод в интерфейсах систем регистратора или хостинг провайдера.
  • Ошибки при вводе IDN домена в кодировке Punycode (опечатки, отсутствие xn-- префикса и т.п.), которые могут привести к ошибкам в настройке DNS.
  • Ошибки при настройке ресурсных записей для IDN домена.
  • Проблемы с делегированием IDN домена на собственные DNS-серверы, если на таких серверах не реализована поддержка алгоритма преобразования Punycode.

Решения:

  1. В интерфейсе регистратора:
    • При необходимости используйте для ввода доменное имя в кодировке Punycode (выполнив преобразование при помощи IDN-конвертера).
    • Убедитесь в правильности ввода доменного имени: нет ли опечаток или ошибок в написании домена.
    • Проверьте корректность всех ресурсных записей (A, MX, CNAME и т.д.).

  1. В интерфейсе хостинг провайдера:
    • При необходимости используйте для ввода доменное имя в кодировке Punycode (выполнив преобразование при помощи IDN-конвертера).
    • Убедитесь в правильности ввода доменного имени: нет ли опечаток или ошибок в написании домена.
    • Проверьте корректность всех ресурсных записей (A, MX, CNAME и т.д.).

  1. В панели управления хостингом:
    • При необходимости используйте для ввода доменное имя в формате Punycode (выполнив преобразование при помощи IDN-конвертера).
    • Убедитесь в правильности ввода доменного имени: нет ли опечаток или ошибок в написании домена.
    • Настраивайте DNS через встроенные инструменты панели управления.
    • Проверьте корректность всех ресурсных записей (A, MX, CNAME и т.д.).

  1. Через консоль и на собственном сервере DNS:
    • Проверьте на сервере DNS наличие поддержки алгоритма преобразования Punycode (согласно RFC 3492). При необходимости установите соответствующее ПО с такой поддержкой или обновите установленное ПО до нужной версии.
    • Вручную указывайте ресурсные записи с IDN доменом в формате Punycode.
    • Проверьте корректность настройки через служебные утилиты проверки DNS (например, dig или nslookup).

3. Настройка электронной почты для домена

Для создания адресов электронной почты в кириллическом домене необходимо выбрать поставщика почтового сервиса или самостоятельно развернуть почтовый сервер.

Возможные проблемы:

  • Не все почтовые сервисы/ПО в настоящий момент предоставляют возможность создания адресов электронной почты, а также отправки, получения и хранения почтовых сообщений, с использованием IDN домена и Юникод символов в локальной части e-mail адреса.
  • Ошибки при настройке ресурсных записей (например, MX-записей) для IDN домена.

Решения:

  1. Собственный почтовый сервер:
    • Убедитесь, что используемое вами почтовое ПО поддерживает работу с IDN доменами и Юникод символами в локальной части адресов электронной почты. Выбирайте соответствующее почтовое ПО, в котором реализована поддержка стандарта интернационализированной электронной почты (EAI)5.
    • При необходимости указывайте IDN домен в кодировке Punycode в конфигурационных файлах почтового ПО. Помните, что преобразование локальной части e-mail адреса (названия почтового ящика) в Punycode не предусмотрено стандартом EAI.

  1. Почтовый сервис/cервер у хостинг-провайдера:
    • Проверьте наличие поддержки работы с IDN доменами и Юникод символами локальной части e-mail адреса почтовым сервисом/сервером хостинг-провайдера.
    • Настраивайте электронную почту через панель управления хостинг-провайдера.
    • В случае отсутствия такой возможности обратитесь в службу поддержки хостинг-провайдера.

  1. Внешний почтовый сервис/сервер (например, услуги провайдеров облачного хостинга и др.):
    •  Убедитесь, что используемый вами почтовый сервис/сервер поддерживает работу с IDN доменами и Юникод символами в локальной части e-mail адреса;
    • В случае отсутствия такой возможности обратитесь в службу поддержки поставщика соответствующего сервиса.

4. Настройка веб-сервера

Для работы вашего сайта в сети интернет необходимо произвести корректную настройку веб-сервера с возможностью указания кириллических доменных имен в конфигурационных файлах.

Возможные проблемы:

  • Могут возникать ошибки при первичной или автоматической (по умолчанию) настройке веб-сервера.
  • Обратите внимание, что по умолчанию большинство современных веб-серверов осуществляют работу с IDN доменами только в кодировке Punycode.
  • При настройке правил преобразования URL на веб-сервере (rewrite) при указании IDN домена могут возникать ошибки из-за несоблюдения формата представления доменного имени: указание домена в кодировке Юникод; опечаток или ошибок в имени домена в кодировке Punycode; автозамена.

Решения:

  1. Автоматическая настройка (виртуальный хостинг):
    • Убедитесь, что выбранный вами виртуальный хостинг поддерживает IDN домены.
    • Проверьте корректность конфигурационных настроек в панели управления веб-сервером и исправьте ошибки при наличии.

  1. Интерфейс панели управления хостинг-провайдера:
    • Если хостинг провайдером используется панель управления собственной разработки, уточните наличие поддержки IDN доменов и порядка работы с ними.
    • При необходимости дополнительно указывайте IDN домен в кодировке Punycode через интерфейс панели.

  1. Панель управления хостингом:
    • Убедитесь, что выбранная вами у хостинг-провайдера панель управления хостингом поддерживает IDN домены.
    • При необходимости дополнительно указывайте IDN домен в кодировке Punycode через интерфейс панели.

  1. Консоль вручную:
    • указывайте IDN домен в кодировке Punycode в конфигурационных файлах веб-сервера.

5. Получение SSL/TLS сертификата

Для того чтобы ваш сайт отображался в браузерах и другом ПО как безопасный, необходимо получить SSL/TLS сертификат для используемого вами кириллического доменного имени и настроить веб-сервер для работы с этим сертификатом.

Возможные проблемы:

  • Большинство центров сертификации в запросе на выпуск сертификата допускают ввод IDN домена только в кодировке Punycode и не поддерживают ввод в кодировке Юникод (в виде U-метки).
  • В большинстве браузеров и другом ПО отображение IDN доменов в данных сертификата доступно только в кодировке Punycode.
  • При выпуске сертификата не принимается контактный адрес электронной почты владельца сертификата, если он содержит символы Юникод в доменной или локальной части.

Решения:

  1. Через панели управления хостингом:
    • Используйте встроенные инструменты панели для автоматического выпуска и установки SSL/TLS-сертификата.

  1. В ручном режиме через консоль:
    • При необходимости указывайте IDN домен в кодировке Punycode при выпуске сертификата.

  1. Панель управления УЦ (или его агента):
    • Заказывайте сертификат в УЦ или через его агента (например, регистратора или хостинг провайдера), убедившись в наличии поддержки IDN доменов и интернационализированной электронной почтой (EAI).

6. Создание сайта при помощи инструментов разработки

Разработка сайта может осуществляться с использованием различных инструментов (например, конструктора сайтов, CMS, фреймворков), а также возможна интеграция сайта со сторонними сервисами. В этом случае следует выбирать те инструменты и сервисы, в которых предусмотрена поддержка доменных имен и адресов электронной почты на кириллице.

1. Возможные проблемы с веб-формами и валидацией:

  • Регулярные выражения для валидации email адресов не учитывают допустимый набор Юникод символов;
  • Фреймворки по умолчанию блокируют использование Юникод символов в email адресах;
  • CMS или конструкторы сайтов могут иметь ограниченную поддержку кодировки Юникод в веб-формах, содержащих поля для ввода адреса сайта (домена) и/или email адреса.

Решения:

    • Предварительно проверьте и выберите для использования инструмент (конструктор сайта, фреймворк и др.) или внешний сервис, который работает корректно с кодировкой Юникод и поддерживает IDN домены и e-mail адреса на кириллице.
    • Регулярно обновляйте библиотеки валидации до последних версий с поддержкой IDN доменов и e-mail адресов на кириллице.
    • Если используются собственные средства валидации, то рекомендуется регулярно обновлять кодовые таблицы символов, разрешенных для использования в доменных именах;
    • Заранее протестируйте плагины для CMS на совместимость с кодировкой Юникод;
    • Устанавливайте UTF-8 в качестве стандартного (по умолчанию) формата кодировки.

2. Возможные проблемы с путями файлов и кодировками:

  • ОС могут хранить пути файлов как последовательности байтов без гарантии поддержки формата кодировки UTF-8;
  • ОС может содержать в пути файлов смешение различных форматов кодировки Юникод, что может приводить к ошибкам.

Решения:

  • Используйте современную ОС с поддержкой формата кодировки UTF-8;
  • В ОС выбирайте по умолчанию UTF-8 в качестве формата кодировки ввода/вывода и переменных окружения.

3. Возможные проблемы баз данных:

  • Ошибки при поиске и индексации данных в формате UTF-8;
  • Проблемы с сортировкой и сравнением интернационализированных строк (строк, содержащих IDN домены и e-mail адреса с Юникод символами);

Решения:

  • Исключите использование устаревших кодировок (Latin1, Windows-1251);
  • Проверьте настройки локализации/интернационализации (например, charset и collation);
  • Исключите возможное ограничение длины полей для данных в формате UTF-8.

4. Возможные проблемы интеграции и API:

  • Большинство платёжных шлюзов поддерживают работу с IDN доменами только в кодировке Punycode (в виде A-метки);
  • CRM и системы аналитики могут некорректно обрабатывать данные в формате UTF-8.

Решения:

  • Проведите предварительное тестирование используемых сервисов на наличие поддержки IDN доменов и e-mail адресов на кириллице, а также порядка работы с ними;
  • При необходимости выполните дополнительные настройки для поддержки кодировки Юникод.

1 Как зарегистрировать домен в зоне .РФ: https://cctld.ru/domains/howto/

2 В настоящем документе используется для обозначения ASCII представления IDN домена, метки которого преобразованы по алгоритму Punycode с добавлением ACE-префикса xn--. Например, кириллические доменное имя «пример.рф» в кодировке Punycode (A-метке) имеет вид «xn--e1afmkfd.xn--p1ai».

3 В настоящем документе используется для обозначения Unicode представления IDN домена (U-метки), когда метки доменного имени состоят из Unicode символов. Например, кириллическое доменное имя в кодировке Юникод (U-метке) имеет вид «пример.рф».

4 Например, IDN Конвертер на сайте Координационного центра доменов .RU/.РФ - https://cctld.ru/service/

5 См список RFC и ключевых стандартов:
https://поддерживаю.рф/участникам/документация/rfc-и-ключевые-стандарты.php
Каталог ПО с указанием текущего статуса поддержки IDN и EAI: https://поддерживаю.рф/каталог/