4.10.8 PHP 7.2: ini_set rot und internal server errors auf einigen Seiten


#1

Hallo zusammen,

ich habe das Problem, das seit auf PHP 7.2 umgestellt wurde, ini_set auf rot steht und die Shop Startseite den Fehler 500 aufweist und ebenfalls im Adminbereich z.B. der Reiter Artikel weiß bleibt.
Auf andere Seiten kann ich zugreifen. Der Wert ist auf msqli gestellt und auch ansonsten ist alles grün.
Ich danke für eure Hilfe!

Gruß
Alex


#2

Fehler Logs?
ist ini_set denn erlaubt?


#3

Fehler-Logs sind leer. Ich habe bereits versucht herauszufinden ob die ini_set beim Hoster erlaubt ist, bisher war Sie das jedenfalls.
Der Shop läuft bei Hosteurope.


#4

bei error 500 sollte was im Webserver Log nicht im OXID Log


#5

Da steht ja eben leider auch nichts


#6

support anschreiben


#7

HE hat tatsächlich am 3.12. um 07:00 Uhr den Support für alle PHP-Versionen ausser 7.2 eingestellt (lange angekündigt); der HE-Support wird sich rigoros weigern, irgendetwas zurückzudrehen, das sich nicht über kis ändern lässt. Niemand hat OXID eShop 4.10.x damit getestet. Die nötigen Anpassungen für PHP 7.0 und 7.1, wie man sie auf der OXIDforge.org finden kann, greifen möglicherweise nicht mehr.
Es gibt nun zwei Wege: Entweder ein Shopupdate in Erwägung ziehen oder den Wechsel des Hosting-Providers hin zu jemandem, der Hosting-Partner ist, mit dem wir regelmässig über solche Dinge reden und uns gegenseitig informieren und Rücksicht auf die Sichtweisen des jeweils anderen nehmen.


#8

Die 7.1 Version kann immer noch alternativ im KIS aktiviert werden.


#9

Stimmt :slight_smile:


#10

Ich danke den vielen Antworten.

Ich habe nun Antwort vom Hoster bekommen.
Das ini_set ist erlaubt und wurde nicht deaktiviert.

Trotzdem ist es rot.

Ich weiß keinen Rat mehr.


#11

Also, ich sag mal, das ist eigentlich nur kosmetisch (da ini_set trotzdem funzt), aber auch logisch: beim Sys-Check wird ja dies versucht:

public function checkIniSet()
{
    return (@ini_set('session.name', 'sid') !== false) ? 2 : 0;
}

aber an der Stelle ist die Session bereits gestartet (und session.name schon gesetzt), sodass diese Änderung seit PHP 7.2 zu einer Warnung und einem “return false” führt. Ich hätte folgende Idee einer Art Optimierung:

public function checkIniSet()
{
    return (ini_get('session.name') === 'sid' || @ini_set('session.name', 'sid') !== false) ? 2 : 0;
}

Dann bleibt es im Sys-Check zumindest grün. Allerdings bleiben wohl noch weitere Baustellen wg. PHP 7.2, da wäre ich also noch vorsichtig. Am besten mal den Shop als Demo mit display_errors = 1 und vollständigem error_reporting durchtesten, da kommen so einige Warnungen…


#12

So, nun habe ich paralell die Version 6 installiert.
Das Ergebnis findet sich unter http://wp10994506.server-he.de/

Es funktioniert irgendwie gar nicht