Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 10. Februar 2020 11:12

Klenkes
Server-Pate
Ort: 89428 Syrgenstein
Registriert: 17. Dezember 2010
Beiträge: 1.437

Seltsame Autokompatibilität mit PHP-7 bei manchen Hostern

Die letzten Wochen hatte ich ein paar Kunden darauf hingewiesen, dass wir ihr CMSms PHP-7 kompatibel machen sollten. Ich gab entsprechende Aufwandschätzungen ab.

Als ich mich ans Werk machen wollte, bemerkte ich dass der Hoster schon auf diverse PHP-7 Versionen umgestellt hatte.
Die Websites liefen alle vollkommen fehlerfrei! Selbst mit ListIt2 Modulen, im Backend so wie im Frontend. Alle Module die sonst Ärger machen, waren brav. WAS??? Wie kann das sein?

Die Installation waren von mir im Lauf der Jahre schon auf 1.12.2 gesetzt worden, sonst aber nichts.

Bisher sind das All-Inkl und eine Website bei Strato.
Bei All-Inkl läuft dort PHP 7.2.24, und bei Strato 7.2.25

In einem Fall dachte ich mir, ich mache meine Updates trotzdem, rüstete von ListIt2 auf LISE um, und aktualisierte alle Module. Patchte /admin/ und alle Module aus NaNs Paket. So weit alles prima.
Beim Updaten von /lib/ erhielt ich den ersten 500 Server Error!
Ich musste meine Backupdateien des /lib/ hochladen und meine Arbeit dort abbrechen.

Irgend etwas in dem Patchpaket ist mit dieser Hoster Konfiguration nicht kompatibel. Aber was? Um das rauszufinden müsste ich schrittweise vorgehen, doch dazu bräuchte ich eine parallele Installation, um die reguläre Website nicht zu stören. Der Kunde ist empfindlich...

Habt ihr so was schon erlebt?

Beitrag geändert von Klenkes (10. Februar 2020 11:13)

Offline

#2 10. Februar 2020 11:29

Klenkes
Server-Pate
Ort: 89428 Syrgenstein
Registriert: 17. Dezember 2010
Beiträge: 1.437

Re: Seltsame Autokompatibilität mit PHP-7 bei manchen Hostern

Grade noch einen Kunden bei All-Inkl gefunden wo noch PHP 5.6 läuft, und nur mal per htaccess diese 2 Zeilen eingefügt:

AddHandler php73-cgi .php
php_flag display_errors off

Und alles läuft fehlerfrei...

Sehr seltsam.

Offline

#3 29. Februar 2020 12:56

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.435

Re: Seltsame Autokompatibilität mit PHP-7 bei manchen Hostern

Sorry für die späte Rückmeldung.
Hab das Thema irgendwie übersehen.

AddHandler php73-cgi .php

Ja, den PHP 7 Patch für CMSms 1.12.2 habe ich nur unter PHP 7.3 getestet.
Es gab zwischen PHP 7.2 und PHP 7.3 eine Menge Änderungen, einige sogar mit großer Wirkung was die Abwärtskompatibiliät angeht. Weiß leider selber nicht mehr welche Änderungen da konkret Probleme machten. Die kompletten Changelogs kann man sich bei Bedarf hier durchlesen.
Aktuell arbeite ich unter PHP 7.4.3 und teste immer mal sporadisch, ob CMSms 1.12.2 noch läuft. Sobald es Probleme gibt, versuche ich die zu beheben. Kann dann aber keine Garantie dafür geben, dass es dann noch mit älteren PHP-Versionen läuft. (Wenn überhaupt, teste ich dann nur stichprobenartig 7.4 und 7.3) Ich arbeite in letzter Zeit soweit möglich generell immer unter der neuesten PHP-Version, weil die Entwicklung bei PHP in den letzten Jahren etwas mehr Fahrt aufgenommen hat als in all den Jahren davor und die Provider auch immer häufiger und schneller ihre PHP-Version aktualisieren.

Langfristig gesehen sollte man auf CMSms 2.+ umsteigen.
Denn dieser Patch war ursprünglich nur als Übergangslösung gedacht, weil die Umstellung auf PHP 7 irgendwann recht flott ging, aber die wenigstens bereits mit CMSms 2.+ warm geworden sind.
Ich wollte damit nur etwas mehr Zeit für den Umstieg verschaffen.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#4 07. März 2020 14:00

Klenkes
Server-Pate
Ort: 89428 Syrgenstein
Registriert: 17. Dezember 2010
Beiträge: 1.437

Re: Seltsame Autokompatibilität mit PHP-7 bei manchen Hostern

Ich stelle bei All-Inkl immer öfter fest, dass eine Datei aus deinem Paket einen Error 500 auslöst.
/lib/classes/class.CMSModule.php
Ich muss die alte Datei belassen(aus 1.12.2) und alles funktioniert trotzdem.

Seltsam...

Offline

#5 07. März 2020 20:18

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.435

Re: Seltsame Autokompatibilität mit PHP-7 bei manchen Hostern

Danke für's Feedback.
500er sind immer schwierig zu debuggen.
Mit Ausnahme des Constructors (CMSModule -> __construct) sind alle Änderungen in dieser Datei eher trivial.

Ich habe z.B. in der Datei sämtliche Vorkommen von "dirname(__FILE__)" in "__DIR__" geändert um die Anzahl der Funktionsaufrufe zur Laufzeit zu reduzieren und den Zugriff auf die CMS-Version über globale Variablen auf Konstanten geändert - das beträfe aber nur die beiden Funktionen "MinimumCMSVersion()" und "MaximumCMSVersion()". Also nichts, was jetzt wirklich mit PHP 7 zu tun hätte. Inwiefern das in einem 500er enden könnte, kann ich leider nicht sagen.

Wie gesagt, mit PHP 7.2 kann ich leider nicht dienen. Bei mir geht PHP 7 erst mit PHP 7.3 richtig los. Allerdings auch nur bis PHP 7.3.12. Von da an gehts bei mir mit PHP 7.4.3 weiter.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline