Расширение DOM на PHP 7.2 Amazon Linux 2

Я получаю сообщение об ошибке ниже из приложения Symfony 2.8 под управлением PHP 7.2.8 на сервере Amazon Linux 2.

Fatal error: Uncaught RuntimeException: Extension DOM is required. in /var/www/html/my-app/vendor/symfony/symfony/src/Symfony/Component/Config/Util/XmlUtils.php:45

php-xml установлен. Также устанавливаются другие общие / связанные библиотеки - php-mbstring, php-common.

В phpinfo я не вижу раздел "DOM". Ниже приведен снимок экрана установленных библиотек, связанных с PHP (список yum установлен | grep php*)

Что мне здесь не хватает?

2 ответа

Решение

После 2 дней тщательного поиска оказалось, что перезапуск php-fpm решает проблему, хотя я все время перезапускал httpd.

sudo systemctl restart php-fpm

В CentOS (и RHEL, я полагаю) модуль PHP (расширение) dom предоставляется

php74-php-xml

https://centos.pkgs.org/7/remi-x86_64/php74-php-xml-7.4.11-1.el7.remi.x86_64.rpm.html

php74-php-dom
php74-php-domxml
php74-php-simplexml
php74-php-xml   = 7.4.11-1.el7.remi
php74-php-xmlreader
php74-php-xmlwriter
php74-php-xsl

Вы убедились, что расширение включено в вашем php.ini? Вы установили правильную версию php-xml? У меня было несколько проблем при установке PHP 7.x и установке расширений. Он установил 5.6 расширения вместо 7.x, когда версия не указана.

Попробуйте эти команды

Чтобы перечислить все модули:

php -m

И / или перечислить подробную конфигурацию:

php -i

Проверьте вывод для расширения php-xml и если он загружен.

Я читал что возможноphp-mbstring должен быть установлен тоже. Но я не слишком уверен в этом, хотя обычно он установлен.

Другие вопросы по тегам