Symptome

  • Nachdem die Zahlungsdaten im Checkout eingegeben und auf "Fortfahren" geklickt wurden, erscheint wieder der Warenkorb.
  • In Firebug erscheint in dem Moment evtl. ein 503-Fehler.
  • In den Magento-Logs (/var/log or /var/report) erscheinen evtl. diese Fehler:
    • Given encoding not supported on this OS
    • The requested Payment Method is not available

Lösung 1

Es kann sich um ein Problem mit PHP handeln.

  • Offiziell unterstützt Magento 1.x nur die hier genannten Versionen: Magento Systemanforderungen.
  • Achten Sie darauf, eine unterstützte PHP-Version zu verwenden.
  • Beachten Sie den Unterschied zwischen Magento 1.9.2 und älteren Versionen!


Lösung 2

Das Problem kann auch mit der Hosting-Plattform zusammenhängen, z.B. wenn HHVM genutzt wird.


Lösung 3
Prüfen Sie in der Browser-Konsole (oder Firebug), ob im Checkout Ajax-Fehler auftreten. Diese können ebenfalls dazu führen, dass der Käufer in den Warenkorb zurückgeleitet wird.

Technischer Hintergrund

Die Ursache von "Given encoding not supported on this OS" ist eine Exception, die von der Klasse Zend_Validate_StringLength geworfen wird. Es wird versucht, ein "ini_set($encoding)" durchzuführen, wobei $encoding entweder 'utf-8' oder 'UTF-8' sein kann. Der ini_set Befehl funktioniert nicht richtig.


Das ist kein Bug im Magento-Modul!