Installationsanleitung

Vom Download bis zur laufenden Webseite. Kein Installer, keine Datenbank, keine Build-Tools – nur Dateien hochladen und loslegen.

Inhalt

  1. Systemvoraussetzungen
  2. Ordnerstruktur verstehen
  3. Hochladen und einrichten
  4. Schreibrechte
  5. Konfiguration
  6. Erster Login

Voraussetzungen

PHP 8.1+, Apache mit mod_rewrite, Schreibrechte auf dem Server. Keine Datenbank, kein Composer, kein npm.

1. Systemvoraussetzungen

Das CMF hat bewusst minimale Anforderungen. Kein Composer, kein Node.js, keine Datenbank – nur ein Standard-Webserver mit PHP.

PHP 8.1 oder neuer
Apache mit mod_rewrite (oder nginx)
Schreibrechte auf dem Server für bestimmte Ordner
FTP-Zugang oder Dateimanager des Hosters
Keine Datenbank nötig
Kein Composer oder npm nötig

2. Ordnerstruktur verstehen

Das ist der wichtigste Punkt der gesamten Installation. Die Ordnerstruktur des CMF trennt öffentliche und private Dateien bewusst voneinander:

public/ = Document Root

Der Ordner public/ ist das Web-Root-Verzeichnis – also der Ordner, auf den die Domain zeigt. Nur dieser Ordner ist öffentlich erreichbar.

Er enthält:

  • index.php – Frontend-Einstiegspunkt
  • admin.php – Admin-Backend
  • api.php – REST-API
  • .htaccess – URL-Rewriting und Caching
  • assets/ – CSS, JS, Schriften
  • media/ – hochgeladene Dateien

Alles andere = nicht öffentlich

Die Ordner app/, config/ und content/ liegen eine Ebene über dem Document Root. Sie sind über den Browser nicht erreichbar – das ist Absicht und wichtig für die Sicherheit.

Diese Ordner enthalten:

  • app/ – PHP-Klassen (Core, Admin, API)
  • config/ – Konfiguration und Benutzerdaten
  • content/ – alle Seiteninhalte als JSON
  • version.json – Versionsinformation

Die häufigste Fehlerquelle: Wenn alle Dateien einfach flach ins Web-Root kopiert werden, funktioniert das System nicht. Die PHP-Dateien erwarten, dass app/, config/ und content/ eine Ebene über dem Document Root liegen. Achte darauf, diese Trennung einzuhalten.

3. Hochladen und einrichten

Je nach Hoster gibt es unterschiedliche Wege, die Dateien auf den Server zu bringen. Entscheidend ist, dass die Ordnerstruktur korrekt abgebildet wird.

1
ZIP entpacken
Das heruntergeladene Archiv lokal entpacken
2
Document Root ermitteln
Im Hosting-Panel nachschauen, welcher Ordner das Web-Root ist
3
Inhalt von public/ hochladen
Alle Dateien aus public/ in das Document Root kopieren
4
Private Ordner hochladen
app/, config/, content/ und version.json eine Ebene darüber
5
Im Browser testen
Domain aufrufen – die Startseite sollte erscheinen

So sieht die Struktur auf dem Server aus:

/                           ← Projekt-Root (nicht öffentlich)
├── app/                      ← PHP-Systemcode
├── config/                   ← Konfiguration
├── content/                  ← Inhalte
├── version.json              ← Version
└── public/                   ← Document Root (hierhin zeigt die Domain)
    ├── index.php
    ├── admin.php
    ├── api.php
    ├── .htaccess
    └── assets/

4. Schreibrechte

Das CMF speichert Inhalte, Konfiguration und Medien als Dateien auf dem Server. Dafür brauchen bestimmte Ordner Schreibrechte. Ohne diese Rechte kann das System keine Inhalte speichern, keine Bilder hochladen und keine Theme-CSS generieren.

config/

Enthält Seiteneinstellungen, Benutzerdaten und Theme-Konfiguration. Schreibrechte nötig für: Einstellungen ändern, Benutzer verwalten, Theme speichern.

chmod 755 oder 775

content/

Enthält alle Seiten und Blog-Beiträge als JSON-Dateien. Schreibrechte nötig für: Seiten erstellen, bearbeiten, löschen.

chmod 755 oder 775

public/media/

Speicherort für hochgeladene Bilder, Videos und Dokumente. Schreibrechte nötig für: Medien-Upload.

chmod 755 oder 775

public/assets/css/

Hier wird die theme.css automatisch generiert. Schreibrechte nötig für: Theme-Änderungen, Custom CSS.

chmod 755 oder 775

5. Konfiguration

Zwei Dateien müssen angepasst werden: config/site.json für die Seiteneinstellungen und README_KI.md für die API-URL.

site.json (Pflicht)

Diese Datei enthält die grundlegenden Einstellungen der Webseite:

{
  "name": "Meine Webseite",
  "lang": "de",
  "baseUrl": "https://meine-domain.de"
}
  • name – wird im Header und als Seitentitel angezeigt
  • lang – Sprache der Webseite (z.B. de, en)
  • baseUrl – die vollständige URL der Webseite, ohne Schrägstrich am Ende

Wichtig: Die baseUrl muss zur tatsächlichen Domain passen – sie wird für die Sitemap und Meta-Tags verwendet.

README_KI.md

Die Datei README_KI.md im Projektordner enthält die API-Referenz für KI-Systeme und Automatisierung. Zwei Stellen müssen angepasst werden:

1. API-URL – oben in der Datei steht:

API-Basis: https://meinewebseite.de/api.php

Diese URL auf die eigene Domain ändern.

2. API-Token – darunter steht der Bearer-Token:

Authentifizierung: Authorization: Bearer cms_DEIN_TOKEN

Dafür im Admin-Backend unter Benutzer einen Benutzer mit der Rolle API anlegen. Das System generiert dann einen API-Token – diesen in der README_KI.md eintragen.

6. Erster Login

Sobald die Dateien auf dem Server liegen und die site.json angepasst ist, kann es losgehen:

Backend aufrufen

Das Admin-Backend erreichst du unter:

https://meine-domain.de/admin.php

Dort erscheint das Login-Formular. Die Zugangsdaten findest du in der mitgelieferten config/users.json.

Standard-Zugangsdaten

Das Download-Paket enthält einen voreingerichteten Benutzer:

  • Benutzername: admin
  • Passwort: admin

Wichtig: Ändere das Passwort sofort nach dem ersten Login unter Benutzer → Passwort ändern.

Installation prüfen

Nach dem Login solltest du prüfen:

  • ✓ Startseite lädt korrekt
  • ✓ Admin-Backend erreichbar
  • ✓ Seiten können bearbeitet werden
  • ✓ Medien-Upload funktioniert
  • ✓ Theme-Änderungen werden übernommen

Falls etwas nicht funktioniert, prüfe die Schreibrechte und die Ordnerstruktur.

CMS-Anleitung API-Referenz Alle Anleitungen Kontakt