Правила nginx для корректной работы CS-Cart с Watermarks
В корневой папке пользователя (/home/username) нужно создать файл nginx.conf и добавить такое правило:
if ($request_uri ~ "\/images\/(product|category|detailed|thumbnails)\/*"){
rewrite .(gif|jpeg|jpg|png)$ /index.php?dispatch=watermark.create;
}
В файле конфигурации CS-Cart config.local.php включить параметр lazy_thumbnails:

По умолчанию вотермарки создают дополнительную нагрузку на базу, потому так же нужно добавить индексы в базу данных сайта:
ALTER TABLE cscart_images_links ADD INDEX image_id (image_id); ALTER TABLE cscart_images_links ADD INDEX detailed_id (detailed_id);
(Соответственно, если таблица cscart_images_links).
Решение проблем с отображением иконки на детальной странице товара
В файле config.php базовое ограничение высоты иконки для lazy_thumbnails установлено в 720:
$config['lazy_thumbnails'] = array(
'max_width' => 1280,
'max_height' => 720
);
Если в админке сайта Настройки > Иконки в параметре Высота иконки на детальной странице товара указано значение больше чем значение в файле config.php, то иконки не генерируются.
Для решения проблемы нужно или уменьшить Высоту иконки на детальной странице товара, либо увеличить значение $config['lazy_thumbnails']['max_height'] (это следует сделать в файле local_config.php, так как при обновлении файл config.php будет заменен на стандартный).
Внимание! Если в CS-CART включен модуль "Поддержка HiDPI", то значения ограничений следует увеличить вдвое.