Hello,
prestashop version 1.7.7.4
The main problem with inodes is that when images are loaded, a lot of folders and files are created. See here
The solution is as follows,
in the file classes/Image.php change the function
public static function getImgFolderStatic($idImage) { if (!is_numeric($idImage)) { return false; } $folders = str_split((string) $idImage); return implode('/', $folders) . '/'; }
to
public static function getImgFolderStatic($idImage) { if (!is_numeric($idImage)) { return false; } $folders = str_split((string) $idImage); return ''; #return implode('/', $folders) . '/'; }
further should be changed .htaccess file
# Images My Solution RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4$5.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4$5$6.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4$5$6$7.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4$5$6$7$8.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4$5$6$7$8$9.jpg [L] RewriteCond %{HTTP_HOST} ^mydomain$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1$2$3$4$5$6$7$8$9$10.jpg [L] ##############Prestashop Original################################ #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L] #RewriteCond %{HTTP_HOST} ^mydomain$ #RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [L]
mydomain must be changed to real domain
It's all.
Best regards