- Educreativos
- 266 views

Migrating an online store is a critical process where every detail matters. However, one of the most common and frustrating setbacks after deployment is discovering that product images are not displaying, showing the dreaded "broken image" icon instead. With the release of PrestaShop 9.0.1, the system architecture has become more demanding regarding media management and server caching. It is no longer enough to simply move files via FTP; you must ensure that the new folder structure and the Symfony routing engine are perfectly synchronized. In this article, we cover the 5 most common scenarios that cause missing photos after a migration and provide precise technical solutions to restore your business's visual appeal in a matter of minutes.
1. Mass Processing via CLI
In PrestaShop 9, processing images through the admin panel often fails for stores with large catalogs due to web server timeout limits. The professional solution is to run the generation command directly in the terminal. This allows the server to work smoothly and without interruptions until the very last thumbnail is ready. php bin/console prestashop:image:generate
2. Regenerating Navigation Paths
When migrating files, the internal map the store uses to locate images (the .htaccess file) can become outdated. If you see 404 errors, the fastest way to fix this is to refresh the configuration: go to Shop Parameters > Traffic & SEO, momentarily disable the Friendly URL option, save the changes, and then turn it back on. This forces the system to rewrite the paths correctly.
3. File Ownership Synchronization
Assigning general permissions is not enough; it is vital that the Owner of the folders is the same user running the web server. If you migrated files via FTP using a different user, the system might block image rendering for security reasons. Ensure the server user has full control over the /img folder to prevent "Access Denied" errors. chown -R www-data:www-data img/
4. Adjusting for Next-Gen Formats
PrestaShop 9 supports modern formats like WebP or AVIF to speed up page loading. However, if you enable this setting without previously regenerating your thumbnails, the browser will look for files with those extensions that do not yet exist on your server. If you decide to make the jump to these formats, remember that the regeneration step is mandatory for images to be visible.
5. Flushing the Symfony Core Cache
Unlike previous versions, PrestaShop 9 relies on a deep cache that stores product and image paths. If you have made changes and they aren't reflecting, the store is likely reading an old cached version of the database. The most effective solution is to physically delete the production folder on your server to force a clean rebuild. rm -rf var/cache/prod/*