Расширение 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
должен быть установлен тоже. Но я не слишком уверен в этом, хотя обычно он установлен.