Page 1 of 1

HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Fri Nov 16, 2018 4:58 pm
by duschitschka
Hallo,
nach der Umstellung von PHP 5.6 auf die PHP-Version 7.2 durch den Hoster meldet der Server den HTTP ERROR 500, oder gibt eine leere Seite für die url http://www.slovokult.de und die admin-page aus.

Ok dachte ich, das ist eine gute Gelegenheit serendipity endlich von v1.2.1 auf v2.1.4 zu aktualisieren :lol:

Ich habe die v2.1.4 auf den Server mit FileZilla hochgeladen. Das Problem ist aber jetzt, dass der Installer nicht startet über die admin-url. Es wird immer noch eine leere Seite ausgegeben. Es scheint an der alten serendipity_config_local.inc.php zu liegen? Wenn diese Datei nicht auf dem Server liegt, dann startet der Installer für v2.1.4 sofort. Aber ohne die alte Datei werden ja meine bestehende Datenbankeinträge überschrieben?

Über Tipps wie ich die Seite mit PHP 7.2 wieder zum Laufen bringe würde ich mich sehr freuen!
Stephan

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Sat Nov 17, 2018 11:02 am
by onli
2.1.4 ist noch nicht völlig kompatibel mit PHP 7.2. Kannst du auf PHP 7.0 oder 7.1 umstellen?

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Sat Nov 17, 2018 6:11 pm
by duschitschka
Ich habe auf PHP 7.0 und PHP 7.1 umgestellt. Aber auch bei den beiden Versionen wird nur eine leere Seite ausgegeben. In den Error-Logs stehen überhaupt keine Fehlermeldungen.

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Sun Nov 18, 2018 12:29 pm
by onli
Das kann eigentlich nicht sein. Wenn es wirklich eine komplett weiße Seite ist, dann ist es ein Serverfehler. Eventuell hat dein Hoster das Logging deaktiviert?
duschitschka wrote:
Fri Nov 16, 2018 4:58 pm
Es scheint an der alten serendipity_config_local.inc.php zu liegen?
Das erscheint mir noch wichtig. Stehen in der datei Anweisungen, die da nicht reingehören? Welche Datenbank ist aktiviert (mysql, sqlite?)

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Sun Nov 18, 2018 9:28 pm
by duschitschka
Ja du hast recht! Ich habe noch einmal nachgeschaut: Der Hoster hat das Logging damals bei der PHP-Umstellung automatisch deaktiviert. Mit Safari wird halt einfach nur eine leere Seite geladen, mit Chrome aber wird der Serverfehler 500 ausgegeben. Als Datenbank ist mysql aktiviert.

Hier der Eintrag im Logfile für PHP 7.0:

Code: Select all

PHP Parse error:  syntax error, unexpected 'new' (T_NEW) in /is/htdocs/wp1069865_374E8877CH/www/plugins/serendipity_event_google_sitemap/serendipity_event_google_sitemap.php on line 585
Die alte Version vom Google-Sitemap-Plugin scheint also den Serverfehler ab PHP 7.0 zu verursachen?

Wenn ich jetzt zum Test mal das Google-Plugin umbenenne, startet der serendipity-Installer bzw. in meinem Fall der Prozess für das Upgrade von v1.2.1 auf 2.1.4 ohne Fehler (wohl dank der alten aber doch funktionierenden serendipity_config.inc.php). Vielleicht weißt du den korrekten Eintrag für die Zeile 585 im Plugin, um den Fehler gleich an der richtigen Stelle zu beheben?

Kann ich danach das Upgrade dann starten, um keine Verluste bei den (Datenbank)-Inhalten zu haben, wenn dass das Problem war?

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Sun Nov 18, 2018 11:00 pm
by onli
Gut dass wir den Fehler identifizieren konnten!

Laut https://github.com/s9y/additional_plugi ... itemap.php ist an dieser Stelle im Code kein new. Ist das Plugin auf der neuesten Version? Was steht dann da bei dir in der Datei in dieser Zeile?

Aber das Plugin ruft HTTP_REQUEST auf, nicht das neue HTTP_REQUEST2, es wird so oder so inkompatibel sein. Am einfachsten wäre es, es vor dem Update zu deinstallieren.

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Mon Nov 19, 2018 12:27 am
by duschitschka
Das Plugin ist v 1.41 2008/07/04 13:05:01 garvinhickin :)

Ja ich würde es auch lieber erst mal deinstallieren, bevor das Update losgeht; und danach die neue Version. Wenn ich das Plugin-Verzeichnis vom Server einfach lösche, wäre das Plugin dann auch deinstalliert?

Ich glaube vor und nach Zeile 585 steht das:

Code: Select all

    function send_ping($loc) {
        global $serendipity;
        require_once (defined('S9Y_PEAR_PATH') ? S9Y_PEAR_PATH : S9Y_INCLUDE_PATH . 'bundled-libs/') . 'HTTP/Request.php';
        $req = &new HTTP_Request($loc);

        if (PEAR::isError($req->sendRequest()) || $req->getResponseCode() != '200') {
            print_r($req);
            return false;
        } else {
            return true;
        }


Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Mon Nov 19, 2018 1:08 am
by onli
Ohje, das ist eine ganz alte Version. Das ist kein gutes Zeichen - wenn die Plugins so lange nicht mehr aktualisiert wurden wird da noch mehr streiken.
duschitschka wrote:
Mon Nov 19, 2018 12:27 am
Wenn ich das Plugin-Verzeichnis vom Server einfach lösche, wäre das Plugin dann auch deinstalliert?
Nein, aber wenn es dann nicht geladen werden kann wird der Fehler umgangen und s9y würde trotzdem noch laden. Aber nicht einfach löschen, kopiere dir die alten Dateien auf deinen Rechner davor, als Backup.

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Mon Nov 19, 2018 9:05 am
by bernd_d
Das alte Problem, dass Plugins die manuell installiert wurden (z.B. weil man "damals" das große Install-Paket genutzt hat) nie ein Update über Spartakus bekommen. Ich bin da auch schon rein gefallen, als ich mal testweise auf php 7.2/7.3 umgestellt hatte und alle möglichen Plugin-Fehler kamen.

Re: HTTP ERROR nach Umstellung auf PHP 7.2

Posted: Mon Nov 19, 2018 5:27 pm
by duschitschka
Nach dem Entfernen des veralteten Sitemap-Plugins habe ich das Update von serendipity auf v2.1.4 gestartet und die nötigen Datenbank-Updates durchführen lassen. Die Admin und Seite waren daraufhin wieder problemlos erreichbar :)

Ja onli, dann fingen einige weitere alte Plugins zu streiken an. Es gab u.a. das Problem, dass die Verbindungen der statischen Seiten (sehr alte Version von static pages) und der aktualisierten Datenbankinhalte noch nicht hergestellt waren. Spartacus fand von selbst auch keine Updates für die vor Ewigkeiten installierten Plugins.

Genau bernd_d, wahrscheinlich geht hier alles immer darauf zurück, dass vor Urzeiten mal alle Plugins manuell installiert wurden. Nachdem ich bei den Spartacus-Einstellungen einfach mal auf "save" geklickt habe (wenn ich mich richtig erinnere), hat das wohl eine Verbindung mit den Plugins hergestellt - und die Suche nach Updates angestoßen. Das Plugin static pages wurde dann aktualisiert - und alle statischen Seiten der Website waren über die Links wieder mit den Inhalten erreichbar.

Vielen Vielen Dank für die Hinweise auf die (deaktivierten) Logfiles und die PHP-Serverfehler der Plugins! Ich beoabachte jetzt noch die Logfiles für evtl. weitere problematische Plugins. Ich habe noch von PHP 7.0 auf PHP 7.1 umgestellt, weil hosteurope am 03.12.2018 PHP 7.0 abschalten wird.