Insights / Technische Beiträge

Eine Astro + Cloudflare Website Schritt für Schritt erweitern

Wie wir Astro und Cloudflare Pages mit AI-Kontaktchat, Sveltia CMS, mehrsprachigem Blog, Service-CTA, sicherem Markdown-Rendering und Kommentaren ohne externen Dienst kombiniert haben.

  • Technologie
  • Astro
  • Cloudflare
  • Website
  • AI
  • CMS
Eine Astro + Cloudflare Website Schritt für Schritt erweitern
Inhaltsverzeichnis
  1. Kurzfassung
  2. Kleine APIs auf Cloudflare
  3. CMS als Bearbeitungsoberfläche
  4. Übersetzung als statischer Inhalt
  5. Kontaktwege haben verschiedene Rollen
  6. AI-Ausgabe ist kein vertrauenswürdiges HTML
  7. Kommentare bleiben in Cloudflare
  8. Nach Ziel lesen
  9. Implementierungsreihenfolge
  10. Fazit

Wer mit Astro und Cloudflare Pages startet, braucht oft zuerst nur schnelle und sichere statische Seiten.

Mit der Zeit kommen neue Anforderungen hinzu: Bearbeitung im Browser, lokalisierte Seiten, Führung per AI-Chat, Formular-Kontext aus Service-Seiten und Kommentare.

Dieser Artikel ist ein Implementierungsindex: Er hilft zu entscheiden, in welche Schicht eine Funktion gehört, in welcher Reihenfolge sie ergänzt wird und welcher Detailartikel als Nächstes passt. Das Beispiel stammt von der Acecore-Website, das Muster lässt sich aber auf andere Astro + Cloudflare-Websites übertragen.

Kurzfassung

Die Architektur trennt Zuständigkeiten:

Schicht Zuständigkeit
Astro Seiten, Blog, OGP, RSS, Sitemap und UI
Cloudflare Pages, Pages Functions, D1 und Turnstile
GitHub PRs, CMS-Diffs, Übersetzungen, Historie
Sveltia CMS Japanische Quelle, Autoren, Tags, Bilder
OpenAI API Antworten des Kontaktchats
Pagefind Suchindex für geprüftes statisches HTML

Was statisch sein kann, bleibt statisch. Dynamik wird als kleine API ergänzt.

Kleine APIs auf Cloudflare

AI-Chat und Kommentare folgen demselben Muster.

Astro rendert die UI. Pages Functions bilden die API-Grenze. Secrets, D1 bindings, Turnstile, Origin checks und rate limits bleiben serverseitig.

CMS als Bearbeitungsoberfläche

Sveltia CMS ist keine Runtime-Datenbank. Es erzeugt Git-Änderungen.

Japanische Inhalte, Autoren, Tags, Bilder und JSON-Texte laufen durch PR, Build und Review.

Übersetzung als statischer Inhalt

Lokalisierung ist keine reine Browser-Übersetzung.

Jede Sprache hat eigene URLs, title, description, OGP, JSON-LD, RSS, sitemap und hreflang.

Kontaktwege haben verschiedene Rollen

Der AI-Chat hilft bei der Auswahl. Service-CTAs behalten Kontext. Das Formular erfasst die formelle Anfrage.

AI-Ausgabe ist kein vertrauenswürdiges HTML

Markdown-Links aus der AI werden erst validiert.

Nur Links auf der Allowlist werden als DOM-Elemente gerendert.

Kommentare bleiben in Cloudflare

Die Kommentare nutzen kein externes Widget.

Pages Functions verarbeiten GET/POST, D1 speichert Kommentare und Turnstile schützt Einreichungen.

Nach Ziel lesen

Man muss nicht zuerst alles lesen. Starten Sie mit der Funktion, die Sie ergänzen möchten.

Ziel Zuerst lesen
Artikel und Bilder im Browser bearbeiten Sveltia CMS Setup Guide
Mehrsprachige Seiten indexierbar veröffentlichen Mehrsprachigen Blog mit Sveltia CMS betreiben
Besucher per AI-Chat führen Technisches Design für den AI-Kontaktchat
Sichere Links in AI-Antworten rendern Sichere Markdown-Links in AI-Antworten rendern
Service-Kontext an das Formular übergeben Service-CTA-Kontext an das Formular übergeben
Kommentare ohne externen Dienst ergänzen Astro-Blogkommentare nur mit Cloudflare umsetzen

Implementierungsreihenfolge

Für eine ähnliche Website ist diese Reihenfolge praktikabel:

  1. Statische Seiten, Blog, RSS, Sitemap und OGP mit Astro stabilisieren.
  2. Sveltia CMS für die japanische Quelle ergänzen.
  3. Lokalisierte Seiten als statisches HTML generieren.
  4. AI-Chat-Führung und Service-CTAs ergänzen.
  5. Markdown-Links, Formular-Prefill, Origin checks und rate limits absichern.
  6. Kommentare erst dann innerhalb von Cloudflare ergänzen, wenn sie wirklich gebraucht werden.

Fazit

Astro + Cloudflare kann eine Unternehmenswebsite erweitern, ohne die Vorteile statischer Auslieferung aufzugeben.

Nutzen Sie diese Seite als Einstieg und ergänzen Sie nur die Teile, die Ihre Website wirklich braucht, ohne die statische Grundlage zu schwächen.

Site Architecture

Schichten für wachsende Website-Funktionen

Standardmäßig statisch bleiben und Dynamik nur dort ergänzen, wo sie nötig ist.

  1. Ausliefern

    HTML mit Astro generieren und über Cloudflare Pages ausliefern.

  2. Bearbeiten

    Japanische Quellen in Sveltia CMS bearbeiten und über PRs prüfen.

  3. Übersetzen

    Übersetzungen in PRs auslagern, statt alle Sprachen im CMS zu pflegen.

  4. Leiten

    AI-Chat und Service-CTAs führen Besucher zum passenden Formular.

Unterschied zwischen einzeln hinzugefügten Funktionen und einer ganzheitlichen Architektur

Funktionen einzeln hinzufügen

  • KI, CMS, Kommentare und Formulare folgen jeweils unterschiedlichen Designprinzipien
  • Skripte und Verwaltungsoberflächen externer Dienste nehmen zu und verteilen die Erklärungsverantwortung
  • Mehrsprachige URLs, Suchindex und Vorschauumgebung weichen leicht voneinander ab
  • Die Beziehung zwischen den Funktionen bleibt unsichtbar und die Einführungsreihenfolge ist schwer festzulegen

Nach Schichten hinzufügen

  • Die Rollen von Astro, Cloudflare, GitHub und OpenAI API lassen sich getrennt erklären
  • Dynamische APIs werden in Pages Functions gebündelt und Speicher mit D1 näher an Cloudflare gebracht
  • CMS-Aktualisierungen, Übersetzungen, Suche, RSS und Sitemap verwenden dieselbe Inhaltsstruktur
  • Die Seite lässt sich als Index nach Zweck und Einführungsreihenfolge lesen

Designprüfung für die Übertragung auf andere Websites

  • Statisch generierbare Inhalte von API-pflichtigen Funktionen trennen
  • CMS als Bearbeitungseinstieg, Übersetzung als PR und Veröffentlichungsentscheidung als Build trennen
  • Keine personenbezogenen Daten an die Anfrage-KI senden und nur mit veröffentlichten Informationen führen lassen
  • Formularkontext über URL-Parameter übergeben und empfangene Werte als stabile Kategorien führen
  • Für Einsendedaten wie Kommentare den physischen D1-Namen und das Binding in der Konfiguration festlegen
  • KI-Ausgaben und Nutzereingaben nicht als vertrauenswürdiges HTML behandeln, sondern Allowlisten verwenden

Häufig gestellte Fragen

Wo sollte man mit der Einführung beginnen?

Festigen Sie zuerst die statischen Astro-Seiten, den Blog, RSS, Sitemap und OGP. Fügen Sie danach CMS und Mehrsprachigkeit hinzu; erst wenn ein Anfrageweg nötig wird, folgen KI-Chat, Service-CTAs und Kommentare.

Sollte alles ausschließlich mit Cloudflare gebaut werden?

Nein. Teile wie die Anfrage-KI verwenden auch die OpenAI API. Entscheidend ist, Auslieferung, API-Grenze, Datenbank und Bot-Schutz bei Cloudflare zu bündeln und bewusst zu trennen, wo externe Dienste eingesetzt werden.

Braucht eine kleine Website all das?

Nicht alles ist von Anfang an nötig. Wenn jedoch CMS, Anfragewege, Mehrsprachigkeit oder Kommentare geplant sind, erleichtert eine frühe Entscheidung über URLs, Speicherort, Vorschauumgebung und Suchindex die spätere Arbeit.