Shopware (hier Version 5.5.1) fragt leider bei der Inatallation oder einem Update (noch ?) nicht ab, ob alle benötigten PHP Erweiterungen auf dem System installiert sind. Die Folge sind dann recht nervige Fehler wie dieser:
Wenn Ihnen in Ihrem Shopware OnlineShop plötzlich Vorschaubilder (= Thumbnails) fehlen oder Bilder teilweise garnicht mehr angezeigt werden, dann kann Ihnen dieser Artikel vielleicht helfen.
Bemerkt werden kann der Fehler im Error-Log des WebServers:
tail -f logs/error_log
mod_fcgid: stderr: PHP Fatal error: Uncaught Error: Call to undefined function Shopware\\Components\\Thumbnail\\Generator\\imagecreatefromstring() in /home/path/public_html/engine/Shopware/Components/Thumbnail/Generator/Basic.php:144, referer: https://www.website.de/backend/ mod_fcgid: stderr: Stack trace:, referer: https://www.website.de/backend/ mod_fcgid: stderr: #0 /home/path/public_html/engine/Shopware/Components/Thumbnail/Generator/Basic.php(83): Shopware\\Components\\Thumbnail\\Generator\\Basic->createImageResource('\\xFF\\xD8...', 'media/image/pag...'), referer: https://www.website.de/backend/ mod_fcgid: stderr: #1 /home/path/public_html/engine/Shopware/Components/Thumbnail/Manager.php(149): Shopware\\Components\\Thumbnail\\Generator\\Basic->createThumbnail('media/image/pag...', '/media/image/th...', '800', '800', true, 90), referer: https://www.website.de/backend/ mod_fcgid: stderr: #2 /home/path/public_html/engine/Shopware/Controllers/Backend/MediaManager.php(458): Shopware\\Components\\Thumbnail\\Manager->createMediaThumbnail(Object(Shopware\\Models\\Media\\Media), Array, true), referer: https://www.website.de/backend/ mod_fcgid: stderr: #3 /home/path/public_html/engine/Library/Enlight/Controller/Action.php(193): Shopware_Controllers_Backend_MediaManager->upl in /home/path/public_html/engine/Shopware/Components/Thumbnail/Generator/Basic.php on line 144, referer: https://www.website.de/backend/
Also gab es einen Fehler beim Aufruf der Funktion "imagecreatefromstring", welche ein Bestandteil des Paketes "GD" ist. Dieses kann einfach installiert werden und stellt dem System diverse Bildbearbeitungsfunktionen zur Verfügung (bitte ersetzen Sie ggf. die PHP Version durch Ihre genutzte Version: php5.6 oder php7.0 oder php7.2 ...):
apt-get install php7.1-gd
Anschließend den kurzen Neustart des Webservers nicht vergessen, damit PHP das neue Paket erkennt und automatisch lädt:
/etc/init.d/apache2 restart
Ab jetzt werden die Bilder beim Hochladen in den Shop automatisch erstellt und angezeigt.