Из-за чего может не генерироваться webp (pthumb) в MODX 2.8.1?

Доброго времени суток!

Подскажите плиз что я ещё забыл настроить. Есть сайт (MODX 2.8.1, php 7.2, gd и imagick включены), пытаюсь вывести с помощью pthumb изображение в формате webp, но выводит обработанное изображение с расширением исходного файла. Проверял на другом сайте генерацию webp — там работает, окружение то же. Изображение вывожу с помощью {$img | pthumb: 'w=100&h=75&far=C&f=webp'} Подскажите, пожалуйста, в чём может быть проблема?

В логах пишет такое:
[2020-11-17 16:07:37] (ERROR @ /home/***/***.netangels.ru/www/core/components/phpthumbof/model/phpthumbof.class.php : 156) [pThumb] Resource: 1 || Image: /home/***/***.netangels.ru/www/assets/app/img/logo.png
Could not cache thumbnail to file at: /home/***/***.netangels.ru/www/assets/components/phpthumbof/cache/logo.6846ef23958b32730261930d4d2c7af6.webp
phpThumb debug output:
    [0] => phpThumb() v1.7.15-202004301145 in file "phpthumb.class.php" on line 233
    [1] => setSourceFilename(/home/***/***.netangels.ru/www/assets/app/img/logo.png) set $this->sourceFilename to "/home/***/***.netangels.ru/www/assets/app/img/logo.png" in file "phpthumb.class.php" on line 298
    [2] => Addding ImageMagick formats to $AvailableImageOutputFormats (text;ico;bmp;wbmp;gif;png;jpeg) in file "phpthumb.class.php" on line 1003
    [3] => $AvailableImageOutputFormats = array(text;ico;bmp;wbmp;gif;png;jpeg;webp) in file "phpthumb.class.php" on line 1009
    [4] => $this->thumbnailFormat set to $this->config_output_format "jpeg" in file "phpthumb.class.php" on line 1020
    [5] => $this->thumbnailFormat set to $this->f "webp" in file "phpthumb.class.php" on line 1027
    [6] => $this->thumbnailQuality set to "75" in file "phpthumb.class.php" on line 1037
    [7] => resolvePath: /home/***/***.netangels.ru/www/assets/app/img/logo.png (allowed_dirs: Array
(
)
) in file "phpthumb.class.php" on line 1180
    [8] => resolvePath: iteration, path=/home/***/***.netangels.ru/www/assets/app/img/logo.png, base path = /home/***/***.netangels.ru/www in file "phpthumb.class.php" on line 1199
    [9] => open_basedir: "" in file "phpthumb.class.php" on line 1166
    [10] => resolvePath: stop at component 9 in file "phpthumb.class.php" on line 1215
    [11] => resolvePath: stop at path=/home/***/***.netangels.ru/www/assets/app/img/logo.png in file "phpthumb.class.php" on line 1218
    [12] => resolvePath: path parsed, over in file "phpthumb.class.php" on line 1224
    [13] => $this->sourceFilename set to "/home/***/***.netangels.ru/www/assets/app/img/logo.png" in file "phpthumb.class.php" on line 930
    [14] => SetCacheFilename() _src set from md5($this->sourceFilename) "/home/***/***.netangels.ru/www/assets/app/img/logo.png" = "b94f6b10bb8db369ecb90296efd54a68" in file "phpthumb.class.php" on line 3591
    [15] => SetCacheFilename() _par set from md5(_farC_h27_w175_dpi150) in file "phpthumb.class.php" on line 3624
    [16] => starting ExtractEXIFgetImageSize() in file "phpthumb.class.php" on line 3389
    [17] => getimagesize(/home/***/***.netangels.ru/www/assets/app/img/logo.png) says image is 205x32 in file "phpthumb.class.php" on line 3399
    [18] => $this->useRawIMoutput=true after checking $UnAllowedParameters in file "phpthumb.class.php" on line 1635
    [19] => phpThumb_tempnam() returning "/tmp/pThumbQWjxM6" in file "phpthumb.class.php" on line 4426
    [20] => ImageMagickSwitchAvailable(thumbnail) = 1 in file "phpthumb.class.php" on line 1571
    [21] => getimagesize(/home/***/***.netangels.ru/www/assets/app/img/logo.png) SUCCEEDED: Array
(
    [0] => 205
    [1] => 32
    [2] => 3
    [3] => width="205" height="32"
    [bits] => 8
    [mime] => image/png
)
 in file "phpthumb.class.php" on line 1730
    [22] => ImageMagickSwitchAvailable(density) = 1 in file "phpthumb.class.php" on line 1571
    [23] => getimagesize(/home/***/***.netangels.ru/www/assets/app/img/logo.png) returned [w=205;h=32;f=3] in file "phpthumb.class.php" on line 1745
    [24] => source dimensions set to 205x32 in file "phpthumb.class.php" on line 1748
    [25] => SetOrientationDependantWidthHeight() starting with "205"x"32" in file "phpthumb.class.php" on line 3368
    [26] => SetOrientationDependantWidthHeight() setting w="175", h="27" in file "phpthumb.class.php" on line 3384
    [27] => Remaining $this->fltr after ImageMagick: (array(0) { } ) in file "phpthumb.class.php" on line 2296
    [28] => ImageMagick called as (convert '/home/***/***.netangels.ru/www/assets/app/img/logo.png[0]' -background none -thumbnail '175x27' -gravity center -background none -extent '175x27' webp:'/tmp/pThumbQWjxM6' 2>&1) in file "phpthumb.class.php" on line 2314
    [29] => ImageMagick failed with message (convert.im6: unable to open image `webp:/tmp/pThumbQWjxM6': Нет такого файла или каталога @ error/blob.c/OpenBlob/2641.
convert.im6: WriteBlob Failed `webp:/tmp/pThumbQWjxM6' @ error/png.c/MagickPNGErrorHandler/1728.) in file "phpthumb.class.php" on line 2319
    [30] => deleting "/tmp/pThumbQWjxM6" in file "phpthumb.class.php" on line 2351
    [31] => ImageMagickThumbnailToGD() failed in file "phpthumb.class.php" on line 3435
    [32] => SetOrientationDependantWidthHeight() starting with "205"x"32" in file "phpthumb.class.php" on line 3368
    [33] => SetOrientationDependantWidthHeight() setting w="175", h="27" in file "phpthumb.class.php" on line 3384
    [34] => EXIF thumbnail extraction: (size=0; type=""; 0x0) in file "phpthumb.class.php" on line 3492
    [35] => starting SourceImageToGD() in file "phpthumb.class.php" on line 3750
    [36] => starting ImageCreateFromFilename(/home/***/***.netangels.ru/www/assets/app/img/logo.png) in file "phpthumb.class.php" on line 3665
    [37] => ImageCreateFromFilename found ($getimagesizeinfo[2]==3) in file "phpthumb.class.php" on line 3674
    [38] => Calling imagecreatefrompng(/home/***/***.netangels.ru/www/assets/app/img/logo.png) in file "phpthumb.class.php" on line 3682
    [39] => Not using EXIF thumbnail data because $this->gdimg_source is already set in file "phpthumb.class.php" on line 3818
    [40] => CalculateThumbnailDimensions() starting with [W,H,sx,sy,sw,sh] initially set to [205,32,,,,] in file "phpthumb.class.php" on line 3240
    [41] => CalculateThumbnailDimensions() starting with [x,y,w,h] initially set to [0,0,205,32] in file "phpthumb.class.php" on line 3255
    [42] => CreateGDoutput() returning canvas "175x27" in file "phpthumb.class.php" on line 3363
    [43] => ImageResizeFunction($o, $s, 1, 0, 0, 0, 173, 27, 205, 32) in file "phpthumb.class.php" on line 4401
    [44] => memory_get_usage() after copy-resize = 2337360 in file "phpthumb.class.php" on line 430
    [45] => memory_get_usage() after imagedestroy = 2300352 in file "phpthumb.class.php" on line 432
    [46] => AntiOffsiteLinking() says this is allowed in file "phpthumb.class.php" on line 2558
    [47] => skipping AlphaChannelFlatten() because ($this->thumbnailFormat == "webp") in file "phpthumb.class.php" on line 2622
    [48] => GenerateThumbnail() completed successfully in file "phpthumb.class.php" on line 444
    [49] => imageinterlace($this->gdimg_output, 1) in file "phpthumb.class.php" on line 480
    [50] => RenderOutput() attempting imagewebp($this->gdimg_output) in file "phpthumb.class.php" on line 483
    [51] => GD does not have required built-in support for WebP output in file "phpthumb.class.php" on line 549
    [52] => RenderOutput [webp(/home/***/***.netangels.ru/www/assets/components/phpthumbof/cache/logo.6846ef23958b32730261930d4d2c7af6.webp)] failed in file "phpthumb.class.php" on line 633
----------------------
В 29 строке пишет, что не может найти файл. Убираю f=webp — начинает генерить превьюшку, ошибок в журнале нет.
Евгений
17 ноября 2020, 20:24
modx.pro
1
1 705
0

Комментарии: 5

Алексей Ерохин
18 ноября 2020, 06:33
0
[51] => GD does not have required built-in support for WebP output in file «phpthumb.class.php» on line 549
нужно php минимум 7.1.0 (https://github.com/JamesHeinrich/phpThumb/issues/107#issuecomment-492827866)
у меня в рабочем конфиге gd 2.3.0
    Евгений
    18 ноября 2020, 09:46
    0
    php версии 7.2, gd на обоих сайтах 2.1.0, но на одном работает норм, на втором не хочет(
      Алексей Ерохин
      18 ноября 2020, 10:23
      0
      а насколько одинаковое окружение на сайтах? прям работают из под одного аккаунта?
      проверьте права доступа

      про gd я невнимательно написал, у вас тут imagemagick работает. а на другом проекте?

      возможно версия без поддержки webp тоже, попробуйте обновить
      посмотреть можно тут
      convert -list delegate
      и там что-то типа
      png<= webp      "cwebp' -quiet %Q '%i' -o '%o"
        Евгений
        18 ноября 2020, 10:31
        0
        оказалось дело в устаревшем тарифе на хостинге. Текущий тариф просто не поддерживал webp. Необходимо на другой тариф переключаться. Тот сайт, на котором работает как раз на том тарифе с поддержкой webp
      Евгений
      18 ноября 2020, 10:00
      0
      увидел, что в php_info в разделе GD нет строки «WebP Support enabled». Видимо в этом и проблема, пошел терроризировать хостера.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      5