Web-Entwicklung mit Cloudflare: In vielen Fällen ohne PHP, WordPress oder eigene Server
Individuelle Kundenlösungen schnell und kosteneffizient entwickeln – ohne Server-Wartung
SerieCloudflare Platform
Teil 1 von 6
Das Problem: Wer heute individuelle Web-Tools für Kunden entwickelt, steht oft vor der Frage: Brauche ich wirklich einen Server, eine Datenbank und ein CMS? Traditionelle Ansätze mit PHP und WordPress bedeuten: Server mieten, Updates einspielen, Backups erstellen, Security-Patches monitoren. Der Aufwand lohnt sich oft nicht für kleine, spezialisierte Tools.
Die Lösung: Mit Cloudflare Workers können Sie professionelle, skalierbare Web-Anwendungen bauen – ganz ohne traditionelle Server-Infrastruktur. Ihr Code läuft an über 250 Standorten weltweit, automatisch skalierend von 1 bis 1 Million Requests. Und das Beste: Oft komplett kostenlos.
Das Ergebnis: Schnellere Entwicklung, niedrigere Betriebskosten, höhere Verfügbarkeit. Ein praktisches Beispiel ist unser Meta Analyzer unter tools.casoon.dev – entwickelt in 8 Stunden, Kosten: 10 €/Jahr (nur Domain), Wartung: 0 Stunden/Monat.
Was sind Cloudflare Workers?
Die kurze Geschichte: Cloudflare begann als CDN (Content Delivery Network) – statische Inhalte weltweit verteilen. Mit Workers kam 2017 die Möglichkeit hinzu, eigenen Code direkt im Cloudflare-Netzwerk auszuführen. Was anfangs für kleine Anpassungen gedacht war (z.B. Header modifizieren, Redirects), ist heute eine vollwertige Serverless-Plattform für komplette Anwendungen.
Was Workers heute sind: Eine Edge-Computing-Plattform, die Ihren JavaScript/TypeScript-Code an über 250 Standorten weltweit ausführt. Statt auf einem zentralen Server (Frankfurt, Oregon) läuft Ihre Anwendung direkt am nächstgelegenen Cloudflare-Rechenzentrum – ob in Berlin, New York oder Tokio.
Der Unterschied zu klassischen Servern:
- Kein Server-Management: Keine VM, keine Container, keine Infrastruktur
- Edge-First: Code läuft dort, wo Ihre Nutzer sind (nicht in einem Rechenzentrum)
- V8 Engine: Gleiche Runtime wie Chrome, extrem schnell
- Pay-per-Use: Nur zahlen, wenn Code ausgeführt wird
Für Ihre Nutzer bedeutet das:
- Extrem schnelle Ladezeiten (Sub-100ms Latenz weltweit)
- Globale Verfügbarkeit ohne geografische Einschränkungen
- Automatische Skalierung (von 1 bis 1 Million Requests/Sekunde)
- 99,99% Uptime ohne Wartungsaufwand Ihrerseits
Der Business Case: Schnell, günstig, wartungsfrei
Warum Cloudflare Workers statt PHP/WordPress?
Früher (PHP/WordPress):
- Server mieten (5-50 €/Monat)
- PHP, MySQL, Apache/nginx konfigurieren
- SSL-Zertifikate erneuern
- Security-Updates einspielen
- Backups erstellen
- Performance-Optimierung (Caching, CDN)
Heute (Cloudflare Workers):
- Code schreiben
wrangler deploy- Fertig!
Kosten: Bis zu welchem Grad kostenlos?
Cloudflare Workers Free Plan:
- 100.000 Requests/Tag kostenlos
- 10ms CPU-Zeit pro Request
- Unlimitierte Bandbreite
Darüber hinaus:
- 5 €/Monat für 10 Millionen Requests
- = 0,50 € pro 1 Million Requests
Rechenbeispiele:
- Kleine Business-Seite: 1.000 Requests/Tag = 30.000/Monat → kostenlos
- Mittelgroßes Tool: 10.000 Requests/Tag = 300.000/Monat → 1,50 €/Monat
- Großes Tool: 100.000 Requests/Tag = 3 Millionen/Monat → 6,50 €/Monat
Praxis-Beispiel: Meta Analyzer
Unser Beispiel-Projekt zeigt, wie moderne Web-Entwicklung funktioniert:
Live-Demo: https://tools.casoon.dev
Features
- Meta Analyzer: Analysiert Webseiten auf SEO-Faktoren, Open Graph Tags, strukturierte Daten
- Rate Limiting: 5.000 Anfragen/Tag global, 200/Tag pro IP
- REST API: Für Integration in andere Systeme
- Custom Domain: tools.casoon.dev statt generischer workers.dev URL
Technologie-Stack
- Runtime: Cloudflare Workers
- Storage: Cloudflare KV (Key-Value Store)
- CDN: Cloudflare Assets
- Domain & SSL: Cloudflare (automatisch)
- Kosten: 0 € im Free-Tier
Datenbank? Cloudflare KV!
Für viele kleine Tools brauchen Sie keine MySQL-Datenbank. Cloudflare KV (Key-Value Store) reicht oft völlig aus.
Anwendungsfall: Rate Limiting
// Speichern: IP-Adresse → Anzahl Requests heute
await kv.put(`ratelimit:ip:${clientIP}:${today}`, JSON.stringify({
count: 1,
date: today
}), {
expirationTtl: 86400 // 24 Stunden
});
// Abrufen und prüfen
const data = await kv.get(ipKey, { type: 'json' });
if (data.count >= 200) {
return new Response('Rate limit exceeded', { status: 429 });
}
Weitere Anwendungsfälle für KV:
- Session-Management (Login-Tokens)
- Feature-Flags
- API-Keys
- Cache für externe APIs
- Einfache Content-Verwaltung
- Formular-Submissions
Kostenlos: 100.000 Reads/Tag, 1.000 Writes/Tag
Authentifizierung: Der einfache Weg mit Cloudflare Access
Sie brauchen nicht gleich Microsoft oder Google OAuth zu integrieren. Cloudflare Access ist die eleganteste Lösung für Kundenprojekte:
Cloudflare Access: Zero-Trust Authentifizierung
Cloudflare Access schützt Ihre gesamte Anwendung oder einzelne Routen - ohne Code-Änderungen:
Setup (einmalig):
- Im Cloudflare Dashboard: Zero Trust → Access → Applications
- Application erstellen:
admin.kunde.deoder/admin/* - Policy wählen: E-Mail-Domain (z.B.
@kunde.de) - Fertig!
Was passiert:
- User besucht geschützte Seite
- Cloudflare zeigt Login-Screen
- User gibt E-Mail ein
- Cloudflare sendet One-Time-Code per E-Mail
- Bei Domain-Match (@kunde.de): Zugriff gewährt
- Session bleibt für X Stunden aktiv
Vorteile:
- Zero-Code: Keine Integration im Worker nötig
- Enterprise-Security: JWT-Tokens, automatische Session-Verwaltung
- Domain-basiert: Nur @kunde.de E-Mails bekommen Zugriff
- Audit-Log: Wer hat sich wann eingeloggt
- Kostenlos: Bis 50 User im Free Plan
Anwendungsbeispiel:
# wrangler.toml
name = "kunde-tool"
routes = [
{ pattern = "admin.kunde.de/*", custom_domain = true }
]
Im Cloudflare Dashboard eine Access-Policy erstellen:
- Domain:
admin.kunde.de - Rule: E-Mail endet mit
@kunde.de - Session-Dauer: 24 Stunden
Fertig! Jeder Zugriff auf admin.kunde.de erfordert nun Login per E-Mail.
Alternative: Einfache Token-Authentifizierung
Für öffentliche Tools mit optionalem Login können Sie auch eine einfache Token-Lösung selbst bauen:
// 1. User gibt E-Mail ein
async function requestLogin(email) {
const token = generateToken(); // 6-stelliger Code
// In KV speichern (15 Minuten gültig)
await kv.put(`auth:${token}`, email, { expirationTtl: 900 });
// E-Mail senden (via Cloudflare Email Routing oder SendGrid)
await sendEmail(email, `Ihr Code: ${token}`);
}
// 2. User gibt Token ein
async function verifyToken(token) {
const email = await kv.get(`auth:${token}`);
if (!email) return { error: 'Token abgelaufen' };
// Session erstellen
const sessionId = crypto.randomUUID();
await kv.put(`session:${sessionId}`, email, { expirationTtl: 86400 });
return { sessionId, email };
}
Wann welche Lösung?
- Cloudflare Access: Admin-Bereiche, interne Tools, B2B-Kunden
- Token-Auth: Öffentliche Tools mit optionalem Login, B2C-Apps
Praxis-Beispiele: Wo Workers glänzen
Meta Analyzer: SEO-Tool in 8 Stunden
Unser Meta Analyzer unter tools.casoon.dev zeigt, wie schnell man Production-ready Tools bauen kann:
Features:
- Webseiten auf SEO-Faktoren analysieren
- Open Graph Tags, strukturierte Daten prüfen
- Rate Limiting: 5.000 Anfragen/Tag global, 200/Tag pro IP
- REST API für Integration
Entwicklung:
- Zeit: 8 Stunden
- Kosten: 10 €/Jahr (Domain)
- Performance: < 50ms Latenz weltweit
- Wartung: 0 Stunden/Monat
Terminverwaltung: WordPress-Alternative
Ein häufiger Kundenwunsch: Termine auf der Webseite anzeigen (Schulungen, Messen, Webinare) – ohne Online-Buchungssystem.
Die Standard-Lösung: WordPress + Plugin
- Hosting: 15 €/Monat
- Wartung: 2 Stunden/Monat (Updates, Security)
- = 2.580 €/Jahr
Die Workers-Lösung:
- Entwicklung: 7 Stunden (API + Admin-Panel + Frontend)
- Kosten: 0 €/Monat
- Wartung: 0 Stunden/Monat
- = 700 € einmalig, dann 0 €
ROI: Nach 4 Monaten haben Sie gespart.
Architektur im Überblick
Admin-Panel (Cloudflare Access)
↓
Worker API + KV Storage
↓
┌──────┬──────┬──────┐
Webseite App Partner-Seiten
Was Sie entwickeln:
- REST API (200 Zeilen JS)
- Admin-Panel (HTML + Cloudflare Access)
- Frontend-Widget (50 Zeilen JS)
Was Sie NICHT entwickeln:
- Server, Datenbank, Auth-System, Backups, Monitoring
Detaillierte Anleitung mit vollständigem Code:
👉 Terminverwaltung mit Cloudflare Workers: Deep-Dive
Vom Konzept zum Live-Tool
1. Lokale Entwicklung
# Setup (einmalig)
pnpm install
pnpm wrangler login
# Entwicklung
pnpm dev
# → http://localhost:8787
2. Deployment
pnpm wrangler deploy
Das passiert automatisch:
- Code wird hochgeladen
- Custom Domain wird konfiguriert
- SSL-Zertifikat wird erstellt
- DNS-Einträge werden gesetzt
- KV Namespace wird verbunden
Dauer: ~20 Sekunden. Kosten: 0 €.
3. Updates
# Code ändern
vim src/router.js
# Deployen
pnpm wrangler deploy
Zero-Downtime-Deployment: Neue Version ist sofort live, alte Requests laufen aus.
Multi-Client-Management: Mehrere Kunden, ein Workflow
Für Agenturen und Freelancer: Mehrere Kundenprojekte, mehrere Cloudflare Accounts.
Projekt-basierte Account-Zuordnung
# kunde-a/wrangler.toml
name = "tool-kunde-a"
account_id = "kunde-a-account-id-123"
# kunde-b/wrangler.toml
name = "tool-kunde-b"
account_id = "kunde-b-account-id-456"
Vorteil:
- Ein Repository pro Kunde
- Account ID im Code → Kein versehentliches Deployen
- Wrangler prüft automatisch Login vs. account_id
Workflow für Agenturen
# Kunde A
cd kunde-a/
pnpm wrangler deploy
# Kunde B
cd ../kunde-b/
pnpm wrangler logout
pnpm wrangler login # Mit anderem Account
pnpm wrangler deploy
Sicherheit: Wrangler blockiert Deploy, wenn Login und account_id nicht übereinstimmen.
Skalierung: Wann braucht man mehr?
Cloudflare KV ist perfekt für kleine bis mittlere Anwendungen. Bei größeren Datenmengen oder komplexen Queries gibt es Alternativen:
Cloudflare D1
- SQL-Datenbank auf Cloudflare Edge
- SQLite-basiert
- Ideal für relationale Daten
Externe Datenbanken
- PlanetScale: MySQL-kompatibel, serverless
- Supabase: PostgreSQL, Open Source
- MongoDB Atlas: NoSQL, global verteilt
Integration: Einfach per REST API oder Connection String aus Cloudflare Workers.
Automatisierung: CI/CD mit GitHub Actions
Für wiederkehrende Deployments:
# .github/workflows/deploy.yml
name: Deploy to Cloudflare Workers
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
- run: pnpm install
- run: pnpm wrangler deploy
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
Ergebnis: Push zu GitHub → Automatisches Deployment → Live in 30 Sekunden.
Was Cloudflare Workers NICHT können
Seien wir ehrlich – es gibt Grenzen:
1. Lange laufende Prozesse
- Limit: 10-50ms CPU-Zeit pro Request
- Nicht geeignet: Video-Encoding, ML-Training, komplexe Berechnungen
- Alternative: Cloudflare Durable Objects
2. Große Datenmengen
- KV: Gut für < 100.000 Einträge
- Nicht geeignet: Relationale Datenbanken, komplexe Queries
- Alternative: Cloudflare D1 oder externe Datenbanken
3. File Uploads
- Limit: 100 MB pro Request
- Nicht geeignet: Große File-Uploads (Videos, Backups)
- Alternative: Cloudflare R2 (S3-kompatibel)
Vergleich mit traditionellen Ansätzen
| Kriterium | Workers | PHP/Shared Hosting | VPS/Dedicated |
|---|---|---|---|
| Setup-Zeit | 5 Min | 1-2 Stunden | 4-8 Stunden |
| Kosten (klein) | 0-5 €/Monat | 5-15 €/Monat | 20-100 €/Monat |
| Latenz (global) | 10-50ms | 100-500ms | 50-300ms |
| Skalierung | Automatisch | Manuell | Manuell |
| Wartung | Keine | Mittel | Hoch |
| SSL/HTTPS | Automatisch | Meist extra | Manuell |
| DDoS-Schutz | Inkludiert | Extra | Extra |
Praxis-Tipps für den Einstieg
1. Start klein
Beginnen Sie mit einem einfachen Tool:
- URL-Shortener
- QR-Code-Generator
- API-Proxy
- Kontaktformular
2. Nutzen Sie Templates
pnpm create cloudflare my-app
# Wählen Sie: Website, API, Static Site, etc.
3. Testen Sie lokal
pnpm dev
Entwickeln Sie lokal, deployen Sie nur für Tests/Produktion.
4. Monitoring
Cloudflare Dashboard zeigt:
- Request-Anzahl
- Fehlerrate
- CPU-Zeit
- Bandbreite
Fazit: Die Zukunft der Web-Entwicklung
Cloudflare Workers zeigen, wohin die Reise geht:
- Beratungsarm: Kunde braucht keine Server-Expertise
- Schnell entwickelt: Von Idee zu Live in Stunden statt Tagen
- Kosteneffizient: Oft 0 €, selten mehr als 10 €/Monat
- Skalierbar: Von 1 zu 1 Million Nutzern ohne Änderung
- Wartungsfrei: Keine Updates, keine Backups, keine Server
- Global: 250+ Standorte weltweit, automatisch
Unser Meta Analyzer unter tools.casoon.dev ist ein lebendiges Beispiel:
- Entwicklungszeit: ~8 Stunden
- Kosten: 10 €/Jahr (nur Domain)
- Features: API, Rate Limiting, Custom Domain, SSL
- Performance: < 50ms Latenz weltweit
- Wartung: 0 Stunden/Monat
Für individuelle Kundenprojekte bedeutet das:
- Schnellere Umsetzung
- Niedrigere Betriebskosten
- Höhere Verfügbarkeit
- Weniger Support-Aufwand
Die Zeit von WordPress für jede kleine Web-App ist vorbei. Willkommen in der Edge-Computing-Ära.
DSGVO & Datenschutz: Was Sie beachten müssen
Wichtig: Sobald Sie personenbezogene Daten speichern (z.B. E-Mail-Adressen in KV, Nutzer-Sessions), gelten DSGVO-Anforderungen.
Cloudflare & DSGVO
Cloudflare ist ein US-Unternehmen, bietet aber umfassende Maßnahmen zur DSGVO-Konformität:
- Data Processing Agreement (DPA) mit Standardvertragsklauseln (SCC)
- EU-US Data Privacy Framework Zertifizierung
- Regionale Speicherorte für KV-Daten wählbar (z.B. EU-Rechenzentren)
Für volle Kontrolle: Wenn Sie Daten langfristig speichern, nutzen Sie EU-basierte Datenbank-Dienstleister:
- Supabase (EU-Hosting verfügbar): PostgreSQL, EU-DSGVO-konform
- PlanetScale (EU-Region): MySQL-kompatibel
- Hetzner Cloud mit PostgreSQL: Deutscher Anbieter, volle DSGVO-Konformität
Praxis-Tipp: Für einfache Session-Daten und Caching reicht Cloudflare KV aus. Für Kundendatenbanken mit sensiblen Informationen sollten Sie einen EU-Dienstleister per API anbinden.
Weiterführende Informationen
Mehr Details zu Cloudflare und DSGVO finden Sie in unserem Artikel: Cloudflare DSGVO-konform nutzen
Haben Sie Fragen zu Cloudflare Workers oder möchten Sie ein individuelles Tool entwickeln?
Kontaktieren Sie uns auf www.casoon.de