Назад | Перейти на главную страницу

Невозможно установить для конфигурации эскизов значение true для Ejabberd mod_http_upload

Я использую последнюю версию Ejabberd 18.12.1. Я включил mod_http_upload для загрузки файлов с конфигурацией по умолчанию для миниатюры как false. Однако, когда я пытаюсь установить для него значение true, сервер не запускается и выдает ошибку:

[error] <0.408.0> @gen_mod: module_error: 574 Недопустимое значение для опции 'thumbnail' модуля mod_http_upload: true

Основываясь на различных документах и ​​материалах поддержки, я понимаю, что нам нужно скомпилировать ejabberd с опцией libgd, чтобы включить эту функцию. Однако я не уверен, как включить / скомпилировать с помощью libgd. Какая команда сделает это.

Я установил все необходимые библиотеки, включая gd и gd-devel, перед компиляцией Ejabberd. Я также пробовал различные варианты при компиляции, включая --enable-graphics но это тоже не помогло.

Любая помощь в понимании того, как можно включить миниатюры, будет действительно оценена.

Глядя на ваш вопрос, я включил этот модуль с этой опцией и получил сообщение об ошибке:

11:04:36.573 [warning] ejabberd is built without image converter support, option 'thumbnail' is ignored
11:04:36.573 [error] Invalid value for option 'thumbnail' of module mod_http_upload: true
11:04:36.573 [critical] ejabberd initialization was aborted because a module start failed.

Если посмотреть на исходный код ejabberd, это требование фактически исходит из этой библиотеки erlang: ejabberd / deps / eimp

Посмотрев на README eimp, я решил установить этот пакет (я использую Debian): libgd-dev, и он автоматически установил другие, такие как libjpeg-dev, libpng-dev ...

Затем я перекомпилировал eimp:

cd ejabberd/deps/eimp
make clean
./configure
make

Наконец, я переустановил ejabberd:

cd ejabberd/
make
make install

И теперь, наконец, ejabberd может правильно начать с thumbnail: true... ошибок нет. Я не тестировал эту функцию на практике.

Спасибо за ответ, Бэдлоп, и приносим извинения за задержку с ответом.

На самом деле я пробовал это на Centos, и даже после устранения зависимости libgd возникли проблемы с модулем eimp, о котором вы упомянули выше. Итак, наконец, я переключился на ubuntu, и после повторной установки ejabberd со всеми зависимостями эта ошибка исчезла.

Я могу запустить сервер без ошибок с помощью «thumbnail: true», а также могу отправлять файлы. Однако миниатюра все еще не создается, и в журналах нет ошибок. Не уверен, что мне сейчас не хватает.