**Kenar yönlendirme kâhini** (DOM-21) — "bu host hangi upstream'e gitsin?"
# Neden burada
Müşterinin özel alan adı (sugiad.com.tr, erp.sugiad.com.tr) hangi ürünü açacak?
Bu karar core.custom_domains.target_module / redirect_url'de yaşıyor ve müşteri
panelden istediği an değiştirebiliyor. Kenar bunu üç şekilde öğrenebilirdi:
* Caddy admin API'sine rota itmek → 🔴 ELENDİ: Caddy burada **Caddyfile** ile koşuyor;
ilk caddy reload'da API ile itilen rotaların hepsi sessizce buharlaşırdı ve arıza
ancak sonraki reload'da, ilgisiz bir değişikliğin ardından ortaya çıkardı.
* Üretilmiş bir .caddy dosyası + reload → müşteri hedef değiştirdiğinde TÜM kenarı
reload etmek gerekirdi; ayrıca dosya, Caddyfile'a elle dokunan biri tarafından
ezilmeye açık.
* **Bu uç** → konfigürasyon HİÇ değişmez, karar anında etkilidir, drift imkânsızdır.
Gateway zaten on_demand_tls { ask } ile **sertifika** kararının içinde; yönlendirme
kararını da ona sormak yeni bir mimari değil, aynı kapının ikinci sorusudur.
# Sözleşme
204 No Content + başlıklar (gövde YOK — Caddy yanıtı handle_response ile yutar):
* X-Blesyum-Target → shop | erp | crm | … | panel | redirect | none
* X-Blesyum-Redirect → yalnız redirect hedefinde, gidilecek adres
none = bu host bize ait değil ya da hedefi yok → kenar varsayılana (panel) düşer.
🔴 404/500 DÖNMÜYORUZ: Caddy tarafında hata dalı müşteri sitesini 502 yapardı.
Bilinmeyen host da, veritabanı hatası da "varsayılan" cevabını alır; site ayakta kalır.
curl -X GET "https://api.blesyum.com/internal/domain-route" \
-H "X-Blesyum-Internal: <imza>" \
-H "Accept: application/json"{
"data": "…",
"trace_id": "01JC…"
}