23.05.2012

Magento mit Suhosin

Für Magento-Installationen auf einer Umgebung mit Suhosin-Patch gibt es einige Besonderheiten zu beachten. Einer dieser Besonderheiten ist die Beschränkung der

Anzahl von Post- und Get-Parametern eines Requests.

Einer meiner Kunden ist mit seinem Magento-Shop kürzlich auf einen neuen Server umgezogen, auf dem PHP mit Suhosin konfiguriert ist. Soweit eigentlich keine schlechte Sache, bis mir gestern auffiel,
dass Suhosin die Anzahl der Post- und Get-Parameter standardmässig auf 100 beschränkt, was ja normalerweise auch genügen sollte.

Allerdings kommen in dem betroffenen Shop 'Bundled Products" zum Einsatz, die eine große Zahl von Produkten kapseln. Als ich einem der Produkte im Backend ein weiteres "Bundled Item" hinzufügen wollte, fiel mir auf, dass jedes Mal nur ein Bruchteil der Änderungen übernommen werden. Die restlichen "Bundled-Items" sind einfach verschwunden und wurden ausserdem auch noch aus der Datenbank entfernt.

Nach intensiver Fehlersuche (Ich hatte erst ein eigenes Modul in Verdacht) bin ich auf diesen Thread bei stackoverflow gestoßen. Demnach verarbeitet Magento die Formulardaten zwar richtig, aber Suhosin sorgt dafür, dass nicht alle Formulardaten den Controller erreichen. Magento speichert in dem Fall dann nur die vorhandenen 100 Parameter und löscht alles andere.

Abhilfe schafft hier nur die Änderung der Suhosin-Konfiguration über eine .htaccess oder php.ini Datei. Die relevanten Flags sind für das o.g. Problem sind

php_value suhosin.post.max_vars
php_value suhosin.post.max_value_length

Diese sollten so hoch wie notwendig gesezt werden. Hier ein Beispiel und weitere Empfehlungen zur Konfiguration Suhosins für Magento (Magento-Wiki).

 

 

 

 

«Magento mit Suhosin» kommentieren

 
 

Suche

Werbung

© 2012 bozoo.com