Einführung
Contao ist ein PHP-basiertes Open-Source-CMS, das du per Composer installierst und aktualisierst. Der Contao Manager ist eine webbasierte Oberfläche, die dir Composer-Aufgaben (Installation/Update, Cache, Erweiterungen) abnimmt.
Voraussetzungen
- Deine Domain/Subdomain ist eingerichtet und per HTTPS erreichbar.
- Die Datenbank (Name, Benutzer, Passwort, Host) ist angelegt.
- Für die SSH-Variante benötigst du Webhosting L oder höher.
- PHP 8.1+ (abhängig von der gewählten Contao-Version)
- Aktiviertes
allow_url_fopen
- PHP-Funktionen
proc_open/proc_close
- PHP-Erweiterungen Intl & OpenSSL
- Datenbank (MySQL/MariaDB)
- Webserver-Dokument-Root zeigt auf den Ordner
/public
des Projekts
Weiterführend:
- Systemvoraussetzungen
- Contao Manager
- Downloads (Manager & Contao)
- Empfehlung: Für neue Projekte verwende eine unterstützte LTS-Version (siehe Downloads).
Schritt 1 - Contao Manager bereitstellen
- Option 1 - per SSH (empfohlen – verfügbar ab Webhosting Tarif L)
ssh contaoy@<wwwXXX> cd ~/public_html wget https://download.contao.org/contao-manager/stable/contao-manager.phar mv contao-manager.phar contao-manager.phar.php
-
Option 2 - per WebFTP (konsoleH → Extras → WebFTP)
Lade auf der Download-Seite den Contao Manager: https://contao.org/de/download
Lade contao-manager.phar via WebFTP nachpublic_html
hoch. Benenne die Datei erst nach dem Upload in contao-manager.phar.php um (vermeidet Text/Binär-Übertragungsprobleme).
Schritt 2 - Contao Manager öffnen & Benutzer anlegen
- Rufe im Browser
https://<contao.example.com>/contao-manager.phar.php
auf. - Lege einen Manager-Benutzer mit starkem Passwort an.
Hinweis: Der Manager benötigt keine eigene Datenbank.
Schritt 3 - Contao installieren
-
PHP-Einstellungen prüfen (falls Meldung erscheint)
Wenn beim System-Check z. B. steht:
PHP Web Process – The PHP setting "allow_url_fopen" is not enabled on the server.
Gehe in
konsoleH
→Einstellungen
→Konfiguration
→PHP-Konfiguration
und setze "allow_url_fopen" = Ein. Achte zusätzlich darauf, dass Intl und OpenSSL verfügbar sind undproc_open/proc_close
erlaubt sind.Hinweis:
allow_url_fopen
lässt sich nicht via.htaccess
aktivieren — nur in der PHP-Konfiguration des Hosters.
-
Webserver-Setup / Dokument-Root auf
/public
setzenÖffne im Contao-Assistenten „Webserver Setup“.
Stelle in
konsoleH
→Einstellungen
→Konfiguration
→Serverkonfiguration
(.htaccess
) das Startverzeichnis auf public um.Wechsle zurück zum Assistenten und bestätige die Meldung:
The directory structure … is set up correctly!
→ Continue.
Hintergrund: In aktuellen Contao-Projekten ist
/public
der öffentliche Webordner. (In Sonderfällen kann projektspezifisch web genutzt werden – dann steht das in dercomposer.json.
)
-
Contao installieren
Klicke im Manager
ggf.
auf Setup.Wähle die Contao-Version (empfohlen: LTS, siehe Downloads) und starte Install.
Bei wenig RAM im Webhosting aktiviere die Composer Resolver Cloud (Option im Manager).
Schritt 4 - Datenbank verbinden & aktualisieren
Trage deine DB-Zugangsdaten ein → Save.
Klicke Check database → bei „Your database is not up to date…“ Execute ausführen, danach Confirm & Close.
Empfehlung: Aktiviere den MySQL Strict Mode.
Continue.
Schritt 5 - Backend-Account erstellen & Login
Lege den Backend-Benutzer (Benutzername, Name, E-Mail, Passwort) an → Add account.
Melde dich im Backend an unter: https://<contao.example.com>/contao/
Schritt 6 - Troubleshooting
- „allow_url_fopen ist nicht aktiviert“
→ Ursache: PHP-Option deaktiviert
→ Lösung: In konsoleH → PHP-Konfiguration aktivieren (nicht per .htaccess
)
- Manager hängt bei „Installiere Composer-Abhängigkeiten…“
→ Ursache: Zu wenig RAM / Timeout beim Composer-Resolver
→ Lösung: Composer Resolver Cloud im Manager aktivieren; memory_limit
≥ 256M setzen
- „No Contao installation has been found“
→ Ursache: Setup nicht ausgeführt oder falsches Startverzeichnis → Lösung: Setup im Manager starten; Startverzeichnis auf /public prüfen
-
Frontend 404 / Weiterleitungsschleife → Ursache: Rewrite nicht aktiv oder falscher Doc-Root → Lösung:
/public
als Startverzeichnis prüfen Apache:.htaccess
/mod_rewrite
aktivieren NGINX:try_files … /index.php…
korrekt setzen -
„Database not up to date“ → Ursache: Ausstehende Migrationen → Lösung: Im Install-Tool/Manager „Execute“ ausführen → danach „Confirm & Close“
-
Backend nicht erreichbar → Ursache: Falscher Pfad oder Cache-Problem → Lösung: Backend unter
/contao/
aufrufen; ggf. Cache im Manager leeren
Ergebnis
Mögliche nächste Schritte sind zum Beispiel:
-
Seitenstruktur & Inhalte anlegen:
-
Sicherheit & Betrieb:
- Nutze Manager/Backend ausschließlich über HTTPS.
- Verwende starke Passwörter, optional 2FA.
- Beschränke den Zugriff auf
/contao-manager.phar.php
nach der Einrichtung oder entferne/benenne die Datei (nur bei Bedarf für Updates verwenden). - Verfolge Updates & Releases