Debug-Modus in Contao 4

von Marco Simbürger

In Contao 4 kann der Debug-Modus nicht mehr im Contao-Backend aktiviert werden. Contao 4 basiert neu auf Symfony und verwendet auch die Dev-Umgebung (Development-Environment) von Symfony.

Die Website wird auch in Contao 4 normal aufgerufen. Z.B.: http://www.marcosimbuerger.ch
Im Hintergrund passiert dabei eigentlich nichts anderes, als dass die app.php Datei aus dem Ordner /web aufgerufen wird.

Im selben Ordner gibt es auch eine Datei app_dev.php. Mit dieser Datei kann man die Website im Dev-Modus öffnen. Dazu ruft man explizit diese Datei auf. Also z.B. http://www.marcosimbuerger.ch/app_dev.php

Der Zugriff auf die app_dev.php ist aber nur von lokal (localhost) oder mit einem Login erlaubt. Um einen Login einzurichten, die Datei app_dev.php öffnen und einen Access-Key hinzufügen. Der Access-Key ist ein SHA512-Key, der aus Username und Passwort generiert wird. Username und Passwort müssen mit einem Doppelpunkt getrennt werden. (Bsp.: marco:contao)

Den SHA512-Key kann man z.B. auf www.hashgenerator.de erstellen.

Ein Beispiel:

marco:contao
12afc4292c2a0e9724b973576904e193ae0ffade0559f18db8f0bb62e8610f6ccad4cfbfce7dd64e87bc9d1aa0f8119f91e9d6aa0acec57628a993baff6a8d9f

Den generierten SHA512-Key dann in der app_dev.php der bereits vorhandenen Variable $accessKey zuweisen.

Nachtrag

In neuen Contao 4 Versionen wird der Access-Key in einer .env Umgebungsvariable gespeichert. Um den Hash zu generieren, gibt es einen Befehl für die Contao-Console:

$ vendor/bin/contao-console contao:install-web-dir -p
$ Please enter a username:marco
$ Please enter a password:

Added the web/app.php file.
Added the web/app_dev.php file.

Der generierte Hash wird dann in der .env Datei abgelegt.

 

Anschliessend die Url aufrufen und die Logindaten eingeben. Danach wird die Website im Debug-Modus geladen.

Dump() Funktion

Die Funktion dump() wird in Contao 4 auf das Symfony Debug-Bundle gemappt. Dies Ausgabe wird direkt in den Web-Profiler (die Symfony Web-Debug-Toolbar) gesendet und dort schön verschachtelt dargestellt.

Die Funktion ist aber nur vorhanden, wenn man sich im Debug-Modus befindet!

Die Funktion dump() in Contao 4

Zurück

Kommentare

Kommentar von Daniel |

Vielen, vielen Dank für diese Anleitung!!!

Kommentar von Kim |

Danke für diese Anleitung!

Ich hänge an etwas ziemlich lächerlichem...: "Den generierten SHA512-Key dann in der app_dev.php der bereits vorhandenen Variable $accessKey zuweisen."
Wie genau mach ich das bzw. sieht das dann aus?

Im File steht nämlich "Use the "contao:install-web-dir" console command to set a password for the dev entry point.", wenn ich diesen Befehl allerdings ausführe, heißt es:
p***:/home/www/p***/html/kunde/contao/web > /usr/local/bin/php_cli contao:install-web-dir
Could not open input file: contao:install-web-dir

Antwort von Marco Simbürger

Hallo Kim

In neueren Contao 4 Versionen wird der Access-Key in einer .env Umgebungsvariable gespeichert. Dieser Hash kann via die Contao Console generiert werden.

Also folgendes ausführen: vendor/bin/contao-console contao:install-web-dir -p und dann Benutzername und Passwort angeben. Ich habe die Doku oben entsprechend ergänzt.

Ich hoffe ich konnte Dir damit weiterhelfen.

Liebe Grüsse
Marco

Einen Kommentar schreiben

Was ist die Summe aus 1 und 6?