Mittwoch, Januar 1, 2020

01. Januar 2020

Still stuck in hell of TYPO3

Nachdem das Buch “Praxiswissen TYPO3 CMS 9 LTS” von Meyer / Helmich (O’Reilly) vorliegt, hab ich mich noch mal an das Projekt gewagt. Doch bevor ich mich mit der Literatur näher befasst habe, konnte ich es wieder einmal nicht abwarten und hab im Backend ein wenig herumkonfiguriert. Das Ergebnis ist ein nicht weiter funktionierendes CMS-System.

Das Buch hat mir aber schon insofern weitergeholfen, als dass ich zumindest mal herausgefunden habe, dass Typo3 eine eigene Konsole mitbringt, auf der man diverse Befehle absetzen kann. Dort findet man auch ein Systemlog, das folgendes ausgibt:

  397      01-01-20 12:18   0         Core: Exception handler (WEB): Uncaught TYPO3 Exception: strlen() expects parameter 1 to be string, null given | TypeError thrown in file /var/www/typo3_src-10.2.2/typo3/sysext/core/Classes/Authentication/IpLocker.php in line 82. Requested URL: http://sr-v41-itw01/typo3/index.php  

Allem Anschein nach handelt es sich wohl um ein PHP-Problem, das aber nicht näher bezeichnet ist und bei einer Recherche im Internet keine besonders hilfreichen weiterführenden Informationen ausgibt.

Auch nach einem Neustart des gesamten Rechners funktioniert der Aufruf der Seite nicht mehr und man kommt auch nicht ins Backend. Aber immerhin weiß ich jetzt was ich machen muss, damit ich TYPO3 von der Konsole aus steuern oder zumindest beeinflussen kann:

root@[Servername]:/var/www/html# typo3/sysext/core/bin/typo3 list

TYPO3 CMS 10.2.2 (Application Context: Production)

Usage:
  command [options] [arguments]

Options:
  -h, --help            Display this help message
  -q, --quiet           Do not output any message
  -V, --version         Display this application version
      --ansi            Force ANSI output
      --no-ansi         Disable ANSI output
  -n, --no-interaction  Do not ask any interactive question
  -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
  dumpautoload                     [extensionmanager:extension:dumpclassloadinginformation|extension:dumpclassloadinginformation] Updates class loading information in non-composer mode.
  help                             Displays help for a command
  list                             Lists commands
 backend
  backend:lock                     Lock the TYPO3 Backend
  backend:unlock                   Unlock the TYPO3 Backend
 cleanup
  cleanup:deletedrecords           Permanently deletes all records marked as "deleted" in the database.
  cleanup:flexforms                Updates all database records which have a FlexForm field and the XML data does not match the chosen datastructure.
  cleanup:lostfiles                Looking for files in the uploads/ folder which does not have a reference in TYPO3 managed records.
  cleanup:missingfiles             Find all file references from records pointing to a missing (non-existing) file.
  cleanup:missingrelations         Find all record references pointing to a non-existing record
  cleanup:multiplereferencedfiles  Looking for files from TYPO3 managed records which are referenced more than once
  cleanup:orphanrecords            Find and delete records that have lost their connection with the page tree.
 extension
  extension:activate               [extensionmanager:extension:install|extension:install] Activates an extension by key
  extension:deactivate             [extensionmanager:extension:uninstall|extension:uninstall] Deactivates an extension by extension key
  extension:list                   Shows the list of extensions available to the system.
 impexp
  impexp:import                    Imports a T3D / XML file with content into a page tree
 language
  language:update                  Update the language files of all activated extensions
 mailer
  mailer:spool:send                [swiftmailer:spool:send] Sends emails from the spool
 redirects
  redirects:checkintegrity         Check integrity of redirects
 referenceindex
  referenceindex:update            Update the reference index of TYPO3
 site
  site:list                        Shows the list of sites available to the system.
  site:show                        Shows the configuration of the specified site. Specify the identifier via "site:show <identifier>".
 syslog
  syslog:list                      Show entries from the sys_log database table of the last 24 hours.
 upgrade
  upgrade:list                     List available upgrade wizards.
  upgrade:run                      Run upgrade wizard. Without arguments all available wizards will be run.
root@[Servername]:/var/www/html# 

Und da hilf ein Blick in das Logfile mit

root@[Servername]:/var/www/html# typo3/sysext/core/bin/typo3 syslog:list|less

Wobei der less-Befehl die Ausgabe seitenweise sortiert und so die aktuellsten Einträge immer zu oberst anzeigt. Ohne less sieht man nur das Ende der Datei, so sie denn lang genug ist und das ist nicht der aktuellste Eintrag, sondern der älteste. Der nützt einem aber i. d. R. wenig.

Jetzt komme ich also erst mal keinen Schritt weiter und ich bin genervt und unmotiviert. Es gibt auch derzeit keine verfügbaren Updates, um das System zu aktualisieren. Auch

typo3/sysext/core/bin/typo3 extension:deactivate ig_ldap_sso_auth

hat keine Verbesserung gebracht. Ich habe diese Erweiterung installiert, um eventuell auch im Unternehmensumfeld die spätere Anbindung an das Active Directory zu gewährleisten und so die Authentifizierung mit LDAP ans AD zu realsieren. Aber auch das war offensichtlich nicht das Problem.

Vielleicht lese ich jetzt doch noch mal im Buch und wenn ich Glück habe kommt mir vielleicht noch eine Idee, die mich weiterbringt.