
Недавно столкнулся с ошибкой обновления сертификата Let’s Encrypt на кириллических доменах (сервер Ubuntu). Так как внятного ответа в поиске с первого раза не нашлось – пишу эту запись, дабы у кого возникнет – было проще найти ответ.
Итак, рысканье по форуму выдало два варианта решения проблемы:
Вариант 1 (консоль крона не видит поддержки utf-8):
echo "export LC_ALL=en_US.UTF-8" >> /etc/profile.d/vesta.sh
Вариант 2 (исправление локали сервера):
sed -i "s/# ru_RU/ru_RU/" /etc/locale.gen
sed -i "s/# en_US/en_US/" /etc/locale.gen
locale-gen en_US.UTF-8
locale-gen ru_RU.UTF-8
echo LANG=en_US.UTF-8 > /etc/default/locale
source /etc/default/locale
service vesta restart
Вариант 3
Можно воспользоваться псевдо-графической утилитой dpkg-reconfigure locales. Для настройки требуется выбрать локали en_US.UTF-8 и ru_RU.UTF-8. В качестве дефолтной локали выбираем en_US.UTF-8.
После второго варианта – все заработало. Единственно пришлось пересоздать сертификаты для сайтов с доменом РФ (через панель – отключаем поддержку LE, сохраняем, затем заново включаем). Без пересоздания сертификатов – ошибка сохранялась.
Возможна еще одна проблема
При пересоздании сертификата для кириллического домена, исправить данную проблему может помочь добавление алиасов c www и без в punycode в веб-интерфейсе панели.