Свои домены
Каждый web-сервис и статический сайт получает бесплатный URL на muerte.app, но продакшен-трафик обычно живёт на вашем домене. Здесь — как добавить домен, какие DNS-записи опубликовать, как выпускаются TLS-сертификаты и что делать с apex, поддоменами, wildcard и проксированными схемами.
Свой домен подключается на уровне сервиса. Muerte Cloud проверяет владение через DNS, выпускает сертификат Let's Encrypt и переводит трафик, как только всё готово. Домены и сертификаты бесплатны.
<name>.muerte.app. Оба ведут на один сервис и используют один TLS-конвейер — удобно для health-check'ов, вебхуков и внутренних инструментов.Добавление домена#
- 1Откройте вкладку Settings сервисаПрокрутите до
Custom domainsи нажмитеAdd domain. - 2Укажите хостнеймВведите точный хостнейм, который хотите обслуживать —
example.com,www.example.comилиapi.example.com. Поддомены добавляются по одному; wildcard настраивается отдельно (см. ниже). - 3Опубликуйте показанные DNS-записиMuerte Cloud покажет точные записи для вашего регистратора. Достаточно
ALIAS/ANAMEилиCNAME— A-записи поддерживать не нужно. - 4Дождитесь проверкиПосле распространения DNS проверка обычно занимает меньше минуты. Статус домена меняется с
PendingнаVerifyingи затемLive.
DNS-записи#
Тип записи зависит от того, apex это домен (example.com) или поддомен (www.example.com, api.example.com).
| Field | Description |
|---|---|
| Поддомен | Опубликуйте CNAME на дефолтный хостнейм сервиса, например www CNAME my-service.muerte.app. TTL 300 — хорошее значение по умолчанию. |
| Apex / корень | Большинство регистраторов не разрешают CNAME на apex. Используйте ALIAS или ANAME, чтобы направить example.com на my-service.muerte.app. В Route 53 это называется Alias-запись. |
| Запасной вариант — A-записи | Если регистратор не поддерживает ни ALIAS, ни ANAME, опубликуйте A-записи на anycast-адреса из панели. Учтите: ими управляем мы и они могут меняться — ALIAS/ANAME предпочтительнее. |
Пример зоны
; apex + www для example.com, указывающие на my-service.muerte.app
example.com. 300 IN ALIAS my-service.muerte.app.
www.example.com. 300 IN CNAME my-service.muerte.app.
; отдельный хостнейм для API на том же или другом сервисе
api.example.com. 300 IN CNAME api-service.muerte.app.TLS-сертификаты#
Сертификаты выпускаются автоматически через Let's Encrypt сразу после подтверждения владения и обновляются заранее. Ничего загружать и ротировать вручную не нужно.
letsencrypt.org. Отсутствие этой строки — самая частая причина зависания в статусе Verifying:example.com. IN CAA 0 issue "letsencrypt.org"Wildcard-домены#
Один сервис может обслуживать все поддомены зоны — *.example.com — через wildcard-домен. Для wildcard нужен DNS-01 challenge, поэтому Muerte Cloud попросит опубликовать временную запись TXT в _acme-challenge.example.com при выпуске и обновлении сертификата.
Wildcard покрывает один уровень поддоменов. *.example.com подходит для foo.example.com, но не для foo.bar.example.com — для более глубокой вложенности добавьте второй wildcard.
Проксированные схемы (Cloudflare и подобные)#
Cloudflare, Fastly или другой прокси перед Muerte Cloud поддерживается, но это меняет TLS-проверку и IP клиентов, которые видит приложение.
| Field | Description |
|---|---|
| TLS-проверка | Прокси терминирует TLS, поэтому HTTP-01 challenge не доходит до Muerte Cloud. Включите DNS-01 в настройках домена и опубликуйте TXT-запись из панели. |
| Сертификат на origin | Используйте режим Full (strict) или аналогичный. Muerte Cloud всегда отдаёт валидный публично доверенный сертификат на origin. |
| Реальный IP клиента | По умолчанию приложение видит IP прокси. Настройте прокси на добавление X-Forwarded-For и читайте этот заголовок в приложении. |
| Кеширование | Статические сайты можно спокойно кешировать на прокси. Для web-сервисов кешируйте HTML только если приложение явно выставляет Cache-Control. |
Редиректы apex и www#
Обычно нужен один канонический хостнейм. Добавьте оба — example.com и www.example.com — отметьте один как основной, и Muerte Cloud поставит 301-редирект со второго. Редирект отрабатывает на границе сети, до вашего приложения — без затрат на рантайме.
Диагностика#
Подробнее о конвейере деплоя — в разделе Как работают деплои, о настройке переменных — в разделе Переменные окружения.