Installation¶
Diese Anleitung führt dich Schritt für Schritt von Null bis zur laufenden Stream-Seite. Plane ca. 15–20 Minuten ein.
Voraussetzungen¶
Bevor du startest, brauchst du:
| Anforderung | Details |
|---|---|
| Webhosting mit PHP 8.0+ | Die meisten Hoster (Hetzner, IONOS, All-Inkl, Strato …) erfüllen das. PHP-Erweiterungen curl, openssl, mbstring, json müssen aktiv sein (Standard bei fast allen). |
| Cron-Job-Möglichkeit | Zum automatischen Aktualisieren der Streams alle 60 s. Fast jedes Hosting-Panel bietet das (cPanel, Plesk, KIS …). |
| HTTPS / SSL | Pflicht. Bei den meisten Hostern per Let's Encrypt 1-Klick aktivierbar. |
| Twitch-Developer-Account | Kostenlos. Liefert Client-ID + Secret für die Stream-Abfrage. → Anleitung |
| FTP- oder Datei-Manager-Zugang | Zum Hochladen der Dateien. |
Ohne HTTPS funktioniert das Admin-Panel nicht sicher
Session-Cookies werden nur über HTTPS mit dem Secure-Flag gesetzt.
Aktiviere SSL vor dem ersten Login.
Schritt 1 — Dateien hochladen¶
- Entpacke das gekaufte ZIP-Archiv lokal.
- Lade alle Dateien per FTP (z. B. FileZilla)
oder den Datei-Manager deines Hosters in das Webroot-Verzeichnis hoch
(meist
htdocs/,public_html/oderwww/).
Die Struktur sieht danach so aus:
public_html/
├── index.html ← öffentliche Stream-Seite
├── admin.php ← Admin-Panel
├── setup.php ← Setup-Wizard (einmalig)
├── fetch.php ← Cron-Worker
├── site-config.php
├── proxy.php
├── twitch.php
├── default-logo.png
├── favicon.png
├── .htaccess ← wichtig! (siehe Hinweis)
└── ...
Versteckte .htaccess nicht vergessen
Die Datei .htaccess beginnt mit einem Punkt und ist im FTP-Client oft
ausgeblendet. Aktiviere „versteckte Dateien anzeigen" und lade sie mit hoch —
sie schützt config.php, data.json & Co. vor direktem Zugriff aus dem Web.
Schritt 2 — Twitch-API vorbereiten¶
Du brauchst eine Client-ID und ein Client-Secret von Twitch. Die komplette Anleitung mit Screenshots:
Halte beide Werte bereit — du gibst sie im nächsten Schritt in den Wizard ein.
Schritt 3 — Setup-Wizard¶
Rufe im Browser auf:
Der Wizard führt dich durch 5 Schritte:
Prüft automatisch PHP-Version, Erweiterungen und Schreibrechte. Alles grün? → Weiter.
Schreibrechte
Falls ein Punkt rot ist: das Verzeichnis braucht Schreibrechte
(CHMOD 755 für Ordner, 644 für Dateien — bei den meisten Hostern Standard).
Trage Client-ID und Client-Secret ein. Der Wizard holt damit automatisch ein App-Token und macht einen Live-Test gegen die Twitch-API. Erfolg = grünes Häkchen.
Übersicht der Einstellungen. Hier wird der Verschlüsselungs-Key generiert, mit dem Webhooks und 2FA-Secrets gesichert werden.
Lege dein erstes Admin-Konto an:
- Benutzername: 3–32 Zeichen (A–Z, 0–9,
_,-) - Passwort: mindestens 12 Zeichen (16+ mit Sonderzeichen empfohlen)
Dieses Konto hat vollen Zugriff. 2FA kannst du direkt nach dem Login aktivieren.
Der Wizard sperrt sich selbst (.setup_complete) und kann nicht erneut
missbraucht werden. Du wirst zum Admin-Panel weitergeleitet.
Sicherheits-Gate
Der Wizard erzeugt beim ersten Aufruf einen einmaligen Token und ist nach Abschluss gesperrt. So kann niemand nach dir ein zweites Admin-Konto anlegen.
Schritt 4 — Cron-Job einrichten¶
Damit die Stream-Liste sich automatisch aktualisiert, muss fetch.php
regelmäßig laufen (empfohlen: jede Minute).
Variante A — über das Hosting-Panel (cPanel/Plesk)¶
Lege einen neuen Cron-Job an, der jede Minute Folgendes ausführt:
Den exakten Pfad zeigt dir dein Hoster (oft /home/USER/public_html/).
Als Intervall „jede Minute" bzw. * * * * * wählen.
Variante B — klassischer crontab (eigener Server / VPS)¶
Zeile hinzufügen:
Erster Lauf
Nach dem ersten Cron-Lauf (max. 60 s) erscheinen die Streams auf der öffentlichen Seite. Vorher zeigt sie „niemand live" — das ist normal.
Test ohne Warten¶
Du kannst fetch.php einmalig manuell über SSH anstoßen:
Schritt 5 — Erste Konfiguration¶
Logge dich in https://deine-domain.de/admin.php ein und richte ein:
- Branding — Community-Name, Logo, Favicon
- Twitch-Filter — Kategorie(n) + Sprache wählen
- Stream-Präfixe — das Tag, das deine Streamer im Titel tragen (leer lassen = alle Streams der Kategorie)
- Community-Links — Discord, YouTube, Twitch, Shop …
- Design — Farben & Verläufe nach Wunsch
Jedes Feld hat ein ℹ️-Symbol mit Erklärung, was rein muss und wo es auf der öffentlichen Seite erscheint.
Vollständige Konfigurations-Referenz
Manuelle Installation (ohne Wizard)¶
Falls du den Wizard überspringen willst (z. B. für automatisierte Deployments):
-
Lege eine
config.phpim Webroot an: -
Lege
users.jsonmit deinem Admin an (Passwort-Hash viapassword_hash('deinpw', PASSWORD_DEFAULT)). - Erstelle eine leere
.setup_complete-Datei, um den Wizard zu sperren. - Cron wie oben einrichten.
Empfohlen bleibt der Wizard
Er generiert Key, Token und Hash korrekt und macht den Twitch-Live-Test — weniger Fehlerquellen.
Geschafft ✅¶
Deine Stream-Seite läuft. Weiter mit: