添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
暴走的毛衣  ·  PHP 8 error: ...·  2 周前    · 
有胆有识的鼠标垫  ·  PHP: ...·  2 周前    · 
心软的夕阳  ·  PHP: shuffle - Manual·  2 周前    · 
考研的馒头  ·  zh-cn:编辑 ...·  2 天前    · 
阳刚的凉面  ·  vBulletin 4.1.10 – ...·  1 月前    · 
安静的香烟  ·  ModuleNotFoundError: ...·  3 月前    · 
瘦瘦的跑步鞋  ·  post请求400-掘金·  9 月前    · 
php -i generates something like this: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/dom.so' - /usr/lib/php/20151012/dom.so: undefined symbol: php_libxml_node_free_list in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/xmlreader.so' - /usr/lib/php/20151012/xmlreader.so: undefined symbol: dom_node_class_entry in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/xsl.so' - /usr/lib/php/20151012/xsl.so: undefined symbol: dom_node_class_entry in Unknown on line 0

Patches

Pull Requests

History

All Comments Changes Git/SVN commits Related reports
[2017-07-06 12:18 UTC] spam2 at rhsoft dot net
this is pretty sure a build-failure and looks like libxml is missing
[reindl@arrakis:~]$ php -v
PHP 7.0.21 (cli) (built: Jul  5 2017 18:05:18) ( NTS )
[reindl@arrakis:~]$ php -m
[PHP Modules]
calendar
ctype
fileinfo
filter
geoip
iconv
imagick
libxml
mbstring
mysqli
mysqlnd
openssl
pdo_mysql
Reflection
session
SimpleXML
standard
[2017-07-06 12:21 UTC] rafal dot ksiazek at workhq dot com
Nope, it was installed.
php -m | grep libxml
libxml
As I said - it goes after: apt-get update & upgrade
[2017-07-06 12:25 UTC] spam2 at rhsoft dot net
then the ordering of modules is wrong in the package as you can see i have no errors - that's sometimes tricky in PHP when extension C is based on B which is based on A
"As I said - it goes after: apt-get update & upgrade" - no you did not say that in the initial report - php-7.0.21-1.0.fc25.20170705.1755.rh.sandybridge.x86_64 is the system PHP but not from the Fedora distribution
since upstream PHP properly built and configured just works as before you better take this to the distributions bugtracker
[2017-07-06 12:27 UTC] rafal dot ksiazek at workhq dot com
[rk]% php -v
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/dom.so' - /usr/lib/php/20151012/dom.so: undefined symbol: php_libxml_node_free_list in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/xmlreader.so' - /usr/lib/php/20151012/xmlreader.so: undefined symbol: dom_node_class_entry in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/xsl.so' - /usr/lib/php/20151012/xsl.so: undefined symbol: dom_node_class_entry in Unknown on line 0
PHP 7.0.20-2~ubuntu14.04.1+deb.sury.org+1 (cli) (built: Jun 14 2017 05:55:23) ( NTS )
[rk]% php -m
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/dom.so' - /usr/lib/php/20151012/dom.so: undefined symbol: php_libxml_node_free_list in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/xmlreader.so' - /usr/lib/php/20151012/xmlreader.so: undefined symbol: dom_node_class_entry in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/xsl.so' - /usr/lib/php/20151012/xsl.so: undefined symbol: dom_node_class_entry in Unknown on line 0
[PHP Modules]
bcmath
calendar
ctype
fileinfo
filter
gettext
iconv
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcntl
pdo_mysql
posix
readline
Reflection
session
shmop
SimpleXML
sockets
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xmlrpc
xmlwriter
Zend OPcache
[Zend Modules]
Zend OPcache
[2017-07-06 12:38 UTC] rafal dot ksiazek at workhq dot com
Hmm.. ok, when I purged whole php7.0-* and installed it again, everything is working fine.
Thanks for quick answers. You are awesome!
[2017-07-06 12:41 UTC] spam2 at rhsoft dot net
again: this is a downstream problem in the distribution or a config problem and given that in your output "Zend OPcache" appears twice and must not exist in "[PHP Modules]" i wouldn't trust you whole configuration whoever is responsible for "extension = opcache.so" which is just plain wrong
don't copy&paste that below blindly because you don#t have the same build and most likely some parts not as shared extension at all
the first part is from "php.ini" for httpd and responsible for the opcache loading shared between all servers and the scond part is a machine specific override, since we rely heavily on dom/xml and have a large autotest-suite for our application i can assure you ta´hat upstream PHP works exactly like before when it's proper built and configured
[zend]
zend_extension                            = "opcache.so"
opcache.enable                            = 1
opcache.enable_cli                        = 0
opcache.load_comments                     = 0
opcache.save_comments                     = 0
opcache.use_cwd                           = 1
opcache.validate_timestamps               = 1
opcache.validate_permission               = 0
opcache.revalidate_freq                   = 15
opcache.revalidate_path                   = 0
opcache.max_accelerated_files             = 1000
opcache.memory_consumption                = 32
opcache.interned_strings_buffer           = 8
opcache.preferred_memory_model            = "mmap"
opcache.max_file_size                     = 327680
opcache.enable_file_override              = 1
opcache.fast_shutdown                     = 1
opcache.log_verbosity_level               = 2
opcache.huge_code_pages                   = 1
cat /etc/php.lounge.d/extensions.ini
extension                             = "zlib.so"
extension                             = "openssl.so"
extension                             = "mbstring.so"
extension                             = "apcu.so"
extension                             = "bz2.so"
extension                             = "calendar.so"
extension                             = "ctype.so"
extension                             = "curl.so"
extension                             = "dom.so"
extension                             = "exif.so"
extension                             = "fileinfo.so"
extension                             = "gd.so"
extension                             = "geoip.so"
extension                             = "hash.so"
extension                             = "iconv.so"
extension                             = "imagick.so"
extension                             = "imap.so"
extension                             = "intl.so"
extension                             = "json.so"
extension                             = "mysqlnd.so"
extension                             = "mysqli.so"
extension                             = "pdo.so"
extension                             = "pdo_mysql.so"
extension                             = "session.so"
extension                             = "simplexml.so"
extension                             = "soap.so"
extension                             = "tidy.so"
extension                             = "xml.so"
extension                             = "zip.so"
opcache.memory_consumption            = 256
opcache.max_accelerated_files         = 10000
opcache.interned_strings_buffer       = 8
[2017-07-06 14:02 UTC] neal at aegis dot systems
I ran into this problem this morning after a yum update of php70.  What I found was a hard copy of the php executable in /usr/bin/ rather than a link.  That left an old version of php as the default executable for `which php`.  So essentially, yum updated remi php but the old executable was still being called.. resulting in an error.  I deleted the old/stale version /usr/bin/php and created a link to the installed remi path. 
#ls -altrh /usr/bin/
lrwxrwxrwx.   1 root root      36 Jul  6 09:21 php54-cgi -> /opt/remi/php54/root/usr/bin/php-cgi*
lrwxrwxrwx.   1 root root      32 Jul  6 09:21 php54 -> /opt/remi/php54/root/usr/bin/php*
lrwxrwxrwx.   1 root root      38 Jul  6 09:21 php54-phar -> /opt/remi/php54/root/usr/bin/phar.phar*
lrwxrwxrwx.   1 root root      33 Jul  6 09:21 php54-pear -> /opt/remi/php54/root/usr/bin/pear*
lrwxrwxrwx.   1 root root      32 Jul  6 09:21 php55 -> /opt/remi/php55/root/usr/bin/php*
lrwxrwxrwx.   1 root root      38 Jul  6 09:21 php55-phar -> /opt/remi/php55/root/usr/bin/phar.phar*
lrwxrwxrwx.   1 root root      36 Jul  6 09:21 php55-cgi -> /opt/remi/php55/root/usr/bin/php-cgi*
lrwxrwxrwx.   1 root root      33 Jul  6 09:21 php55-pear -> /opt/remi/php55/root/usr/bin/pear*
lrwxrwxrwx.   1 root root      38 Jul  6 09:22 php56-phar -> /opt/remi/php56/root/usr/bin/phar.phar*
lrwxrwxrwx.   1 root root      36 Jul  6 09:22 php56-cgi -> /opt/remi/php56/root/usr/bin/php-cgi*
lrwxrwxrwx.   1 root root      32 Jul  6 09:22 php56 -> /opt/remi/php56/root/usr/bin/php*
lrwxrwxrwx.   1 root root      33 Jul  6 09:22 php56-pear -> /opt/remi/php56/root/usr/bin/pear*
lrwxrwxrwx.   1 root root      32 Jul  6 09:22 php70 -> /opt/remi/php70/root/usr/bin/php*
lrwxrwxrwx.   1 root root      38 Jul  6 09:22 php70-phar -> /opt/remi/php70/root/usr/bin/phar.phar*
lrwxrwxrwx.   1 root root      36 Jul  6 09:22 php70-cgi -> /opt/remi/php70/root/usr/bin/php-cgi*
lrwxrwxrwx.   1 root root      36 Jul  6 09:22 php71-cgi -> /opt/remi/php71/root/usr/bin/php-cgi*
lrwxrwxrwx.   1 root root      32 Jul  6 09:22 php71 -> /opt/remi/php71/root/usr/bin/php*
lrwxrwxrwx.   1 root root      38 Jul  6 09:22 php71-phar -> /opt/remi/php71/root/usr/bin/phar.phar*
lrwxrwxrwx.   1 root root      32 Jul  6 09:27 php -> /opt/remi/php70/root/usr/bin/php*
[2017-07-06 14:04 UTC] [email protected] -Status: Open +Status: Not a bug
[2017-07-06 14:04 UTC] [email protected]
Based on the 20151012 date it looks like you had it trying to load PHP 5 extensions left from your previous installation.
[2017-07-06 14:23 UTC] rafal dot ksiazek at workhq dot com
Nope, On this server there was no other php version. BTW. After reinstalation it's still the same folder with extensions for php7.0.
[2017-07-06 14:54 UTC] [email protected]
You're right, that is the date used in the php7.0 packages. It's during the RC releases of 7.0.0 so maybe that's when he started setting up builds.
Anyway, some sort of dependency/versioning issues created during the update process.
[2017-07-08 11:24 UTC] pgee at me dot com
In my case this was caused by not all the packages being upgraded.  looking at the output of apt-get upgrade there were some PHP packages being held back.
The following packages have been kept back:
  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
0 upgraded, 0 newly installed, 0 to remove and 10 not upgraded.
so i just installed those packages:
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
and the issue resolved itself.  phew!