Не предоставляйте пользователю веб-сервера sudo доступ, Вы просто напрашиваетесь на неприятности. Изучите бит setuid вместо этого:
chmod u+s some_file_that_needs_executing_as_another_user.pl
Каждый раз, когда тот файл выполняется, он будет эффективно выполняться пользователем, который создал его.
На ноте стороны я вполне уверен, Вы не можете передать пароль по каналу в sudo или passwd.
Это означает, что символ gdImageWebpCtx не может быть найден в общих библиотеках, используемых модуль. gdImageWebpCtx предоставляется gd / libgd (не php-gd).
readelf -s /usr/lib64/libgd.so.2
и
nm -D /usr/lib64/libgd.so.2
будут перечислять символы, и я очень уверен, что вы не найдете их там.
У меня были десятки похожих / совместимых проблемы с пакетами, предоставленными Реми Колле (похоже, он очень занят обслуживанием всего и так далее).
Удалите все пакеты remi ( rpm -qa | grep remi
), удалите пакет remi-release и установите последний доступные пакеты php / gg / etc из репозитория EPEL (вам может потребоваться понизить их версию с помощью пакета rpm -Uvh. rpm --oldversion
). Затем обновите все пакеты (!).
Если вы хотите иметь php 5.5, то я рекомендую вам загрузить src.rpm из репозитория remi, установить src.rpm и перекомпилировать с rpmbuild --target x86_64 -ba /root/rpmbuild/SPECS/php.spec
. Таким образом, все двоичные файлы будут построены в соответствии с вашей системой.
Вот почему я никогда не использую REMI php rpms. Mysql хороши.
s php rpms. Mysql хороши. s php rpms. Mysql хороши.Ошибка компоновщика. Похоже, у вас не установлена библиотека gd (или, что более вероятно, у вас установлена неправильная версия библиотеки).
Есть ли ldd /usr/lib64/php/modules/gd.so
сообщить о недостающих библиотеках? (Не ожидаю.)
Какую версию libgd вы установили?
I also just needed gd-last.
sudo yum --enablerepo=epel,remi,remi-php55 install gd-last
Worked for me with php 5.5.7 and REMI Repository. I previously had the same error.
В моем случае после обновления из репозитория remi-php56 решением было удалить старые файлы gdlib.so из / usr / lib
, / usr / lib64
и / usr / local / lib
.
Проверьте сообщение на форуме