DOGFATHER UNIVERSE: erste lauffähige Website + Bewerbungs-Postfach + Hosting-Vorbereitung
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
# DOGFATHER UNIVERSE — Bewerbungs-Postfach (Cloudflare Worker)
|
||||
|
||||
Dieser Worker nimmt Bewerbungen von `bewerben.html` entgegen und speichert sie in Cloudflare KV.
|
||||
Nur wer den richtigen Code kennt, kann sie über `postfach.html` einsehen — der Code wird
|
||||
**serverseitig** geprüft (nicht im Browser-Code sichtbar), das ist der eigentliche Schutz.
|
||||
|
||||
Kosten: läuft im kostenlosen Cloudflare-Tier (Workers Free + KV Free reichen für dieses Volumen locker).
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
- Ein (kostenloser) Cloudflare-Account
|
||||
- Node.js installiert (für `npx wrangler`)
|
||||
|
||||
## Deploy in 5 Schritten
|
||||
|
||||
Alles im Ordner `cloudflare-worker/` ausführen:
|
||||
|
||||
```bash
|
||||
cd cloudflare-worker
|
||||
|
||||
# 1. Bei Cloudflare einloggen (öffnet Browser zur Anmeldung)
|
||||
npx wrangler login
|
||||
|
||||
# 2. KV-Namespace anlegen (Speicher für die Bewerbungen)
|
||||
npx wrangler kv namespace create BEWERBUNGEN
|
||||
```
|
||||
|
||||
Die Ausgabe von Schritt 2 enthält eine `id = "..."`. Diese `id` in `wrangler.toml` bei
|
||||
`REPLACE_ME` eintragen.
|
||||
|
||||
```bash
|
||||
# 3. Geheimen Zugangscode für das Postfach festlegen
|
||||
# (wird abgefragt, nirgends im Code sichtbar — frei wählbar, z.B. ein langes Passwort)
|
||||
npx wrangler secret put POSTFACH_CODE
|
||||
|
||||
# 4. Worker deployen
|
||||
npx wrangler deploy
|
||||
```
|
||||
|
||||
Schritt 4 gibt eine URL aus, z.B. `https://dogfather-universe-postfach.<dein-account>.workers.dev`.
|
||||
|
||||
```bash
|
||||
# 5. Kurz testen
|
||||
curl https://dogfather-universe-postfach.<dein-account>.workers.dev/health
|
||||
# sollte {"ok":true,"service":"dogfather-universe-postfach"} zurückgeben
|
||||
```
|
||||
|
||||
## Website mit dem Worker verbinden
|
||||
|
||||
Nach dem Deploy die Worker-URL an zwei Stellen eintragen:
|
||||
|
||||
1. `assets/js/forms.js` → Konstante `API_BASE_URL` ganz oben auf die Worker-URL setzen
|
||||
(ohne abschließenden Slash).
|
||||
2. `postfach.html` → Konstante `API_BASE_URL` im `<script>`-Block genauso setzen.
|
||||
|
||||
Danach gehen neue Bewerbungen automatisch an den Worker statt (nur) an den `mailto:`-Fallback,
|
||||
und `postfach.html` kann sie mit dem in Schritt 3 gesetzten Code anzeigen.
|
||||
|
||||
## Wer den Code kennen darf
|
||||
|
||||
Der Code aus Schritt 3 ist der einzige Schlüssel zum Postfach. Nur an Personen weitergeben, die
|
||||
wirklich Zugriff auf Bewerbungen haben sollen. Code ändern: einfach `wrangler secret put
|
||||
POSTFACH_CODE` erneut ausführen und neuen Wert eingeben — alte Bewerbungen bleiben erhalten,
|
||||
nur der Zugangscode ändert sich.
|
||||
|
||||
## Wartung
|
||||
|
||||
- Bewerbungen ansehen: über `postfach.html` mit Code (empfohlen), oder direkt im Cloudflare
|
||||
Dashboard unter Workers & Pages → KV → `BEWERBUNGEN`.
|
||||
- Bewerbungen löschen: im Cloudflare Dashboard unter KV die einzelnen `sub:...`-Einträge entfernen.
|
||||
- CORS ist aktuell offen (`*`) — sobald die finale Domain feststeht, in `src/worker.js` →
|
||||
`corsHeaders()` auf die echte Domain einschränken (siehe TODO-Kommentar dort).
|
||||
Reference in New Issue
Block a user