managarten/docs/CLOUDFLARE_DOMAINS.md
Till JS 51f80f43b6 docs: add Cloudflare Pages domain configuration guide
Documents all Cloudflare Pages projects, their custom domain status,
and pending actions. Identifies 5 landing pages without custom domains
and 3 deploy scripts without CF projects.

Key action items:
- it.mana.how → it-landing (just deployed, needs custom domain)
- citycorners.mana.how → citycorners-landing (no custom domain)
- nutriphi.mana.how → nutriphi-landing (no custom domain)
- manadeck.mana.how → manadeck-landing (no custom domain)
- docs.mana.how → manacore-docs (no custom domain)
- mail-landing, moodlit-landing CF projects need creation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 10:15:41 +01:00

4.6 KiB

Cloudflare Pages — Domains & Projekte

Stand: 2026-03-24

Ausstehende Aktionen

1. it.mana.how — Custom Domain hinzufügen (NEU)

Cloudflare Dashboard:

  1. Gehe zu Pages → it-landing → Custom domains
  2. Klicke Set up a custom domain
  3. Gib ein: it.mana.how
  4. Cloudflare setzt automatisch den CNAME (da mana.how bereits bei Cloudflare liegt)

Status: Deployed unter it-landing-9hg.pages.dev, Custom Domain fehlt noch.


2. Landing Pages ohne Custom Domain

Diese Projekte sind deployed aber nur unter *.pages.dev erreichbar — keine *.mana.how Domain konfiguriert:

CF Projekt Aktuelle URL Gewünschte Domain Aktion
it-landing it-landing-9hg.pages.dev it.mana.how Custom Domain hinzufügen
citycorners-landing citycorners-landing.pages.dev citycorners.mana.how Custom Domain hinzufügen
nutriphi-landing nutriphi-landing.pages.dev nutriphi.mana.how Custom Domain hinzufügen
todo-landing todo-landing.pages.dev todo.mana.how (Landing, nicht App!) Prüfen: Konflikt mit App-URL?
manadeck-landing manadeck-landing.pages.dev manadeck.mana.how Custom Domain hinzufügen
manacore-docs manacore-docs.pages.dev docs.mana.how Custom Domain hinzufügen

Hinweis todo.mana.how: Die App läuft bereits unter todo.mana.how via Cloudflare Tunnel. Die Landing Page muss eine andere Domain bekommen, z.B. todo-info.mana.how oder die Landing wird auf einer Unterseite der App eingebunden.

3. Landing Pages die noch nicht deployed sind

Diese haben ein deploy:landing:* Script aber kein CF-Projekt:

Script CF Projekt Status
deploy:landing:calendar calendars-landing Kein CF-Projekt gefunden — evtl. anderer Name?
deploy:landing:mail mail-landing Kein CF-Projekt — muss erstellt werden
deploy:landing:moodlit moodlit-landing Kein CF-Projekt — muss erstellt werden

Erstellen mit:

npx wrangler pages project create mail-landing --production-branch=main
npx wrangler pages project create moodlit-landing --production-branch=main

Bestehende Projekte (korrekt konfiguriert)

CF Projekt pages.dev URL Custom Domain Status
chat-landing chat-landing-90m.pages.dev chats.mana.how OK
clocks-landing clocks-landing.pages.dev clocks.mana.how OK
picture-landing picture-landing.pages.dev pics.mana.how OK
presi-landing presi-landing.pages.dev presis.mana.how OK
zitare-landing zitare-landing.pages.dev zitares.mana.how OK
manacore-landing manacore-landing.pages.dev devlog.mana.how, woh.mana.how OK

Alle Custom Domains — Schritt-für-Schritt

Für jede ausstehende Domain im Cloudflare Dashboard:

  1. Pages → [Projektname] → Custom domains → Set up a custom domain
  2. Domain eingeben (z.B. it.mana.how)
  3. Cloudflare prüft automatisch die DNS-Zone
  4. Da mana.how bereits bei Cloudflare ist → CNAME wird automatisch angelegt
  5. SSL-Zertifikat wird automatisch erstellt (~1-2 Minuten)

Batch: Alle fehlenden Domains auf einmal

it-landing          → it.mana.how
citycorners-landing → citycorners.mana.how
nutriphi-landing    → nutriphi.mana.how
manadeck-landing    → manadeck.mana.how
manacore-docs       → docs.mana.how

Domain-Namenskonvention

Typ Pattern Beispiel
App (Backend + Web) {app}.mana.how chat.mana.how, todo.mana.how
Landing Page {app}.mana.how oder {plural}.mana.how pics.mana.how, chats.mana.how
Service {service}.mana.how auth.mana.how, matrix.mana.how
Informational {topic}.mana.how it.mana.how, docs.mana.how

Problem: Einige Apps und ihre Landing Pages konkurrieren um die gleiche Subdomain (z.B. todo.mana.how ist die App, aber die Landing Page braucht auch eine URL). Aktuell gelöst durch Plural-Formen (chats, pics, clocks, etc.).


Cloudflare Tunnel vs. Pages

Wichtig: Es gibt zwei verschiedene Routing-Mechanismen:

Typ Routing Beispiel
Cloudflare Tunnel cloudflared-config.yml → localhost-Port chat.mana.howlocalhost:3000 (App)
Cloudflare Pages Pages Custom Domain → statische Dateien chats.mana.howchat-landing (Landing)

Diese dürfen nicht die gleiche Domain verwenden! Eine Domain kann entweder Tunnel ODER Pages zugeordnet sein, nicht beiden.