Модернизация системы обработки изображений (ImageMagick + WebP + Resize 1200px) На сайте доски обьявлений от тамаранга v2 ,обновленный до rocky linux8, php 8x ,nginx1,28,2mysql 8,00,44 phpmyadmin 5,2,3 на vps 8потоков,24 озу,200 nume 1. Цель работы: Обеспечить поддержку загрузки современных форматов фото (HEIC, AVIF), внедрить автоматическую оптимизацию всех изображений в формат WebP и организовать экономное хранение файлов на сервере (Rocky Linux 8). 2. Настройка серверного окружения: Установить и настроить пакеты ImageMagick и php-imagick. Rocky Linux 8 и PHP 8.x, важно, чтобы расширение imagick работало стабильно. В конфигурации Nginx (client_max_body_size) и PHP Размеры php ini уже коректированы на сайте - проверьте 3. Логика обработки изображений (через папку custom/): Поддержка форматов: Реализовать прием и чтение файлов JPG, PNG, GIF, WEBP, HEIC, AVIF. Конвертация в WebP: Все загружаемые файлы должны конвертироваться в формат WebP (рекомендуемое качество 80 %). Ресайз (Original): Максимальный размер «Оригинала» после загрузки — 1200px по длинной стороне (высота — пропорционально). Этот сжатый файл сохраняется как основной источник. «Важное условие ресайза: Реализовать логику downscale only. Уменьшать только те изображения, размер которых превышает 1200px по длинной стороне. Изображения меньшего размера сохранять без изменения разрешения (не растягивать), выполняя только конвертацию в формат WebP». Удаление исходника (ОБЯЗАТЕЛЬНО): Сразу после генерации WebP-оригинала (1200px), исходный файл, загруженный пользователем (который мог весить 10-20 МБ), должен быть удален с сервера. Генерация превью: Все остальные размеры (view — 800px, m, s) нарезаются из уже созданного WebP-оригинала и сохраняются также в формате .webp. 4. Интеграция с CMS Tamaranga: База данных: Реализовать автоматическую подмену расширения файла на .webp при записи путей в таблицы БД (например, в модуле объявлений bbs). Чистота кода: Все правки PHP-логики должны быть выполнены путем переопределения классов в директории custom/. Прямая правка ядра (app/biff/) запрещена. Совместимость: Обеспечить корректное отображение старых изображений в формате .jpg, которые уже есть на сервере. 5. Ожидаемый результат: Пользователь может загрузить фото до 20 МБ (включая HEIC с iPhone). На сервере в папке files/ создаются только оптимизированные .webp файлы. Вес одного объявления в базе не превышает 1.5 МБ. Сайт корректно отображает новые фото во всех браузерах, поддерживающих WebP