web-dev-qa-db-ja.com

PHP警告:PHPスタートアップ:動的ライブラリをロードできません

このコマンドを実行するとphp -v
このエラーが発生します:

PHP警告:PHPスタートアップ:動的ライブラリ '/usr/lib/php/20160303/dom.so'をロードできません-/usr/lib/php/20160303/dom.so:未定義シンボル:0行目のUnknownのphp_libxml_node_free_list

PHP警告:PHPスタートアップ:動的ライブラリ '/usr/lib/php/20160303/xmlreader.so'をロードできません-/usr/lib/php/20160303/xmlreader.so:未定義シンボル:0行目のUnknownのdom_node_class_entry

PHP警告:PHPスタートアップ:動的ライブラリ '/usr/lib/php/20160303/xsl.so'をロードできません-/usr/lib/php/20160303/xsl.so:未定義シンボル:0行目のUnknownのdom_node_class_entry
PHP 7.1.5-1 + deb.sury.org〜trusty + 2(cli)(built:May 22 2017 13:39:01)(NTS)

Copyright(c)1997-2017 The PHP Group Zend Engine v3.1.0、Copyright(c)1998-2017 Zend Technologies with Zend OPcache v7.1.7-1 + ubuntu14.04.1 + deb.sury .org + 1、著作権(c)1999-2017、Zend Technologies

10
Scott Wang

安全な解決策は、php7関連のパッケージをすべて再インストールすることです。

次のコマンドをコンソールに入力するだけで実行できます。

Sudo apt-get install --reinstall `dpkg -l | grep 'ii  php7' | awk '{ printf($2" "); next}'`

このソリューションは、構成を変更せずに維持します

61
Fiil

(ubuntu 14.04以降)

Sudo apt-get install libapache2-mod-php7.0 libphp7.0-embed libssl-dev openssl php7.0-cgi php7.0-cli php7.0-common php7.0-dev php7.0-fpm php7.0- phpdbg

参照:

https://gnh1201.wordpress.com/2017/07/24/php-7-0-undefined-symbol-php_libxml_node_free_list/

8
Go Namhyeon

Linuxの更新後、xmlでほぼ同じ問題が見つかりました(およびPHP 7.0-> 7.1を使用))。

私にとっての解決策は非常に簡単でした:

Sudo apt install php7.1-xml
3
Dmitry Sichev

同じエラーが発生しました。報告された欠落ファイルが存在し、ファイルのパーミッションは私には問題ないと思われ、PHPは正しいユーザーとグループを使用して実行されました。

私にとっては、すべてのPHPパッケージを削除し、新たに開始するのに役立ちました。

  1. 次のコマンドは、Debian/Ubuntuシステムでremove all PHP packages)(PHP configを含む-前にバックアップを作成):

    Sudo aptitude purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
    

    ソース: https://askubuntu.com/a/187278

  2. PHPが削除されたかどうかを確認します。

    php -v
    

    これにより、「command not found:php」のようなものが返されます。

  3. 次に、PHP=を再度インストールします。例:

    Sudo apt-get install php7.1 php7.1-xml php7.1-fpm php7.1-json
    
0
Icarus