Seite 1 von 1

Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Di 27. Okt 2015, 11:06
von steve04
Hallo,

ich habe gerade auf einem Server mit Contenido 4.9.8 ein Upgrade auf PHP-Version 5.6.13 ausgeführt.
Der Login in das Backend funktioniert noch. Allerdings bekomme ich danach nur den unteren Teil mit Wahl der Mandanten und MyContenido zu sehen. Der obere Bereich mit dem Menue fehlt.

Der Quelltext sieht so aus:

Code: Alles auswählen

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

<!-- frameset -->

<html>

<head>

    <title>:: ::  :: :: CONTENIDO 4.9.8 http://domain.de/pfad-zu/contenido/contenido/</title>

    <meta http-equiv="Content-type" content="text/html;charset=iso-8859-1">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="pragma" content="no-cache">
    <link rel="SHORTCUT ICON" href="http://domain.de/pfad-zu/contenido/contenido/favicon.ico">
    <style type="text/css">
    frameset, frame{border: none; margin: 0; padding: 0;}
    </style>

    <!-- JS -->
    <script type="text/javascript" src="scripts/jquery/jquery.js"></script>
    <script type="text/javascript" src="scripts/jquery/jquery-ui.js"></script>
    <script type="text/javascript" src="scripts/contenido.js"></script>
    <script type="text/javascript" src="scripts/general.js"></script>
    <script type="text/javascript">
    (function(Con, $) {
        Con.sid = "c1u8g3u4a6u57t02al7lp8fk7pmhk4i7";
        $.extend(Con.cfg, {
            urlBackend: "http://domain.de/pfad-zu/contenido/contenido/",
            urlHelp: "",
            belang: "de_DE",
            frame: 0
        });
    })(Con, Con.$);
    </script>
    <script type="text/javascript" src="scripts/startup.js"></script>
    <script type="text/javascript" src="scripts/jquery/plugins/atooltip.jquery.js"></script>
    <!-- /JS -->
    <script type="text/javascript">
    window.name = "CONTENIDO_Backend";
    </script>
</head>

<frameset rows="82,*" frameborder="0" framespacing="0">

    <!-- Header -->
    <frame name="header" src="header.php?changelang=6&changeclient=5&contenido=c1u8g31u42a6u57t02al7lp8fk7pmhk4i7" scrolling="no" noresize="noresize" frameborder="0">

    <!-- Content -->
    <frame name="content" src="frameset.php?area=mycontenido&frame=1&menuless=1&changelang=&lang=6&client=5&contenido=c1u8g3u4a6u57t02al7lp8fk7pmhk4i7" scrolling="no" noresize="noresize" frameborder="0">

</frameset>

</html>
Ein Klick auf header.php erzeugt einen Fehler 500.
Im error.log steht folgender Eintrag:

Code: Alles auswählen

PHP Fatal error:  Class 'DOMDocument' not found in /var/www/server/domain.de/pfad-zu/contenido/contenido/classes/xml/class.xml.reader.php on line 45
Die phpinfo() zeigt zum Thema XML diverse Einträge:

Code: Alles auswählen

--enable-xml
--enable-simplexml

libxml
libXML support 	active
libXML Compiled Version 	2.7.6
libXML Loaded Version 	20706
libXML streams 	enabled

mbstring.http_output_conv_mimetypes	^(text/|application/xhtml\+xml)	^(text/|application/xhtml\+xml)

SimpleXML
Revision 	$Id: 6b8e23a01a8504673... $
Schema support 	enabled

XML Support 	active
XML Namespace Support 	active
libxml2 Version 	2.7.6

_SERVER["HTTP_ACCEPT"]	text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Die Mandanten-Frontends scheinen soweit zu funktionieren.
Hat jemand eine Idee, was angepasst werden muss?

Vielen Dank!
Stephan

Re: Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Di 27. Okt 2015, 13:32
von rethus
Aller erste Handlung nach dem Upgrade: Browser-Cache leeren
Zweite Handlung: Sämtliche Contenido-Caches leeren.

Hat schon häufig für verwirrende Ergebnisse gesorgt, wenn dies nicht gemacht wurde - kann ich aus eigener Erfahrung bestätigen :lol:

Re: Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Di 27. Okt 2015, 13:57
von steve04
Zu 1. Ich bin schon an einer anderen Maschine gewesen, mit der ich das Backend noch nie bedient habe. Zwei verschiedene Browser...
Zu 2. Sind denn noch mehr Caches relevant als contenido > data > cache ? Dieses Verzeichnis ist leer.

Vielen Dank trotzdem!

Stephan

Re: Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Di 27. Okt 2015, 14:25
von rethus
Welche Linux-Distri hat der Server?

Schau auf der Shell mal mit php -m welche Module installiert sind.
Stelle auch sicher, das das Paket php5-dom auf dem Server installiert ist. (php56-xml) sollte auch installiert sein.

Hast du PHP selbst kompiliert? Schau dir in der phpinfo an, ob vielleicht der FLAG: --disable-dom als Compile-Command gesetzt wurde (volltextsuche in der Ausgabeseite nutzen)

Re: Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Di 27. Okt 2015, 14:27
von Oldperl
Servus,

das Backend wird nicht gecacht, und schon gar nicht der Menüframe. Errorlog in data/logs checken, evtl. das PHP-Errorhandling je nach Einstellung auf höchste Stufe setzen. Mit Firebug die geladenen HTML-Dateien anschauen, der Quelltext nur vom gesamten Browser mit dem frameset ist wenig aussagekräftig. Hier mal nur im ober Frame in den Quelltext schauen.

Gruß aus Franken

Ortwin

Re: Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Di 27. Okt 2015, 14:29
von Oldperl
rethus hat geschrieben:Schau auf der Shell mal mit php -m welche Module installiert sind.
Stelle auch sicher, das das Paket php5-dom auf dem Server installiert ist. (php56-xml) sollte auch installiert sein.

Hast du PHP selbst kompiliert? Schau dir in der phpinfo an, ob vielleicht der FLAG: --disable-dom als Compile-Command gesetzt wurde (volltextsuche in der Ausgabeseite nutzen)
Wieso soll er das denn machen??? :shock: :roll:

Wenn doch der Rest des Backends angezeigt wird und nur der obere Menüframe nicht macht das wohl wenig Sinn, da PHP ja offensichtlich läuft.

Gruß aus Franken

Ortwin

Re: Backend nach PHP-Upgrade nicht bedienbar

Verfasst: Mi 28. Okt 2015, 10:59
von rethus
Oldperl hat geschrieben: Wieso soll er das denn machen??? :shock: :roll:
Darum:

Code: Alles auswählen

PHP Fatal error:  Class 'DOMDocument' not found..
Is eine Fehlermeldung des Webservers das auf ein Problem mit der XML-Komponente auf dem Server schließen lässt. Hat also nix mit defekten oder fehlenden Contenido-Dateien zu tun.
Oldperl hat geschrieben:das Backend wird nicht gecacht, und schon gar nicht der Menüframe
Kann ich so nicht unterschreiben. Klar, von Contenido wird fürs Backend kein Cache angelegt, aber die Browser sehen das teilweise ganz anders. Zu bedenken wäre ggf. auch noch, ob ein Proxy oder apc-Cache zwischengeschaltet ist... der würde dann ggf. auch weiter gecachte Inhalte ausliefern.
Ich war auch schon der Verzweifelung Nahe und es lag letztendlich am Browser-Cache nach einem Upgrade. Selbst leeren des Caches usw. hat nichts gebracht - nur ein kompletter Reboot des Browsers. Manchmal ist - zumindest der Chrome - in dieser Beziehung sehr seltsam.