Beitragsdatum | 28.08.2025 |
---|---|
Letzte Aktualisierung | - |
Betrifft | OPcache, Xataface, diverse Versionen |
Xataface ist ein Framework, um schnell und einfach komplexe Datenbankanwendungen bauen zu können.
Während der Programmierung an einer Xataface-Anwendung gab es plötzlich Fehlermeldungen, die im Log des Apache zu folgenden Einträgen führten:
AH01071: Got error 'PHP message: ###>; PHP message: Exception: Could not find URL for file xxx/modules/switch_user/switch_user.php in module tool in yyy/Dataface/ModuleTool.php:176\nStack trace:\n#0 xxx/modules/switch_user/switch_user.php(114): Dataface_ModuleTool→getModuleURL()\n#1 xxx/modules/switch_user/switch_user.php(69): modules_switch_user→getBaseURL()\n#2 yyy/Dataface/ModuleTool.php(264): modules_switch_user→__construct()\n#3 yyy/Dataface/Application.php(3300): Dataface_ModuleTool→loadModule()\n#4 yyy/Dataface/Application.php(3857): Dataface_Application→handleRequest()\n#5 yyy/Dataface/Applicat…; PHP message: <###'
Hinweis: mit xxx habe ich den Pfad zum Xataface-Projekt gekürzt, mit yyy zum Installationsverzeichnis von Xataface selbst.
Der Fehler verweist auf das Modul switch_user (siehe github.com/shannah), welches offensichtlich nicht richtig funktioniert.
Ich versuchte das Modul zu deaktivieren und alle Dateien des Moduls zu löschen. Das half nichts.
Im Cache waren noch Daten des Moduls abgelegt, weshalb eine Entfernung aller Modulrelevanten Einträge und Dateien keine Wirkung zeigte, außer weitere Fehler zu schmeißen.
Den Cache löschen. Ich erkläre den gesamten Vorgang zum Löschen des Moduls. Der letzte Schritt löscht den Cache.
Die folgende Vorgehensweise entfernt das Modul vollständig:
rm -r modules/switch_user/
# Die Zeile entfernen: modules_switch_user="modules/switch_user/switch_user.php"
systemctl restart apache2
<?php opcache_reset(); ?>
# URL zur Anwendung gefolgt von /reset-cache.php, z.B.: https://ich-bin-ein-test.yz/reset-cache.php
Dadurch wird das Modul vollständig entfernt.
Anschließend könnte es neu installiert werden. Vermutlich reicht der letzte Schritt (Cache löschen) aus, wenn das Modul gar nicht entfernt werden soll, sondern aus unbekannten Gründen die genannte Fehlermeldung erzeugen sollte.
Ähnliche Themen im blog:
xataface, cache, apache