Undefined symbol zend_interrupt_function

Daretar

PHP Entwickler
Hallo miteinander,

nach dem Update auf Plesk 17.8.11 bekomme ich folgenden Fehler:

Failed loading /usr/lib/php/20151012/ioncube_loader_lin_7.1.so: /usr/lib/php/20151012/ioncube_loader_lin_7.1.so: undefined symbol: zend_interrupt_function

weiß jemand wie ich das fixen kann?

Grüße und einen schönen Sonntag euch allen :)
 
Failed loading /usr/lib/php/20151012/ioncube_loader_lin_7.1.so: /usr/lib/php/20151012/ioncube_loader_lin_7.1.so: undefined symbol: zend_interrupt_function

Da stimmen die PHP-API nicht überein:
PHP 7.1 = 20160303
PHP 7.0 = 20151012


Mit anderen Worten: Dein ioncube (und vermutlich weitere Module/Extensions) ist für PHP 7.0 und nicht für PHP 7.1
 
Das Datum sagt nix aus, bei Plesk Onyx sind alle ioncubeloader in /usr/lib/php/20151012/

Auf meinem Debian 9 + Oynx 17.8.11 lädt der ioncubeloader.so ohne Probleme be PHP 7.1

/opt/plesk/php/7.1/bin/php -i
bzw.
/opt/plesk/php/7.1/bin/php -m
zeigt beiderlei keine Probleme.
 
Danke für Eure mithilfe :)

@DjTom-i


OS:
Ubuntu 16.04.4 LTS

php -v
Code:
PHP 7.1.16 (cli) (built: Mar 30 2018 13:44:00) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.16, Copyright (c) 1999-2018, by Zend Technologies

plesk bin php_handler --list

Code:
   id:        display name:  full version:  version:    type:                         cgi-bin:                    php-cli:                        php.ini:  custom:  status:
                  cgi  7.0.22 by OS vendor         7.0.28       7.0      cgi                 /usr/bin/php-cgi                /usr/bin/php        /etc/php/7.0/cgi/php.ini    false disabled
              fastcgi  7.0.22 by OS vendor         7.0.28       7.0  fastcgi                 /usr/bin/php-cgi                /usr/bin/php        /etc/php/7.0/cgi/php.ini    false disabled
                  fpm  7.0.22 by OS vendor         7.0.28       7.0      fpm             /usr/sbin/php-fpm7.0                /usr/bin/php        /etc/php/7.0/fpm/php.ini    false  enabled
               module  7.0.22 by OS vendor         7.0.28       7.0   module                 /usr/bin/php-cgi                /usr/bin/php    /etc/php/7.0/apache2/php.ini    false disabled
      plesk-php56-cgi               5.6.35         5.6.35       5.6      cgi   /opt/plesk/php/5.6/bin/php-cgi  /opt/plesk/php/5.6/bin/php  /opt/plesk/php/5.6/etc/php.ini     true disabled
  plesk-php56-fastcgi               5.6.35         5.6.35       5.6  fastcgi   /opt/plesk/php/5.6/bin/php-cgi  /opt/plesk/php/5.6/bin/php  /opt/plesk/php/5.6/etc/php.ini     true disabled
      plesk-php56-fpm               5.6.35         5.6.35       5.6      fpm  /opt/plesk/php/5.6/sbin/php-fpm  /opt/plesk/php/5.6/bin/php  /opt/plesk/php/5.6/etc/php.ini     true  enabled
      plesk-php70-cgi               7.0.29         7.0.29       7.0      cgi   /opt/plesk/php/7.0/bin/php-cgi  /opt/plesk/php/7.0/bin/php  /opt/plesk/php/7.0/etc/php.ini     true disabled
  plesk-php70-fastcgi               7.0.29         7.0.29       7.0  fastcgi   /opt/plesk/php/7.0/bin/php-cgi  /opt/plesk/php/7.0/bin/php  /opt/plesk/php/7.0/etc/php.ini     true disabled
      plesk-php70-fpm               7.0.29         7.0.29       7.0      fpm  /opt/plesk/php/7.0/sbin/php-fpm  /opt/plesk/php/7.0/bin/php  /opt/plesk/php/7.0/etc/php.ini     true  enabled
      plesk-php71-cgi               7.1.16         7.1.16       7.1      cgi   /opt/plesk/php/7.1/bin/php-cgi  /opt/plesk/php/7.1/bin/php  /opt/plesk/php/7.1/etc/php.ini     true disabled
  plesk-php71-fastcgi               7.1.16         7.1.16       7.1  fastcgi   /opt/plesk/php/7.1/bin/php-cgi  /opt/plesk/php/7.1/bin/php  /opt/plesk/php/7.1/etc/php.ini     true disabled
      plesk-php71-fpm               7.1.16         7.1.16       7.1      fpm  /opt/plesk/php/7.1/sbin/php-fpm  /opt/plesk/php/7.1/bin/php  /opt/plesk/php/7.1/etc/php.ini     true  enabled
      plesk-php72-cgi                7.2.4          7.2.4       7.2      cgi   /opt/plesk/php/7.2/bin/php-cgi  /opt/plesk/php/7.2/bin/php  /opt/plesk/php/7.2/etc/php.ini     true disabled
  plesk-php72-fastcgi                7.2.4          7.2.4       7.2  fastcgi   /opt/plesk/php/7.2/bin/php-cgi  /opt/plesk/php/7.2/bin/php  /opt/plesk/php/7.2/etc/php.ini     true disabled
      plesk-php72-fpm                7.2.4          7.2.4       7.2      fpm  /opt/plesk/php/7.2/sbin/php-fpm  /opt/plesk/php/7.2/bin/php  /opt/plesk/php/7.2/etc/php.ini     true  enabled
 
Ich bin jetzt auch noch hingegangen und habe ioncube neu heruntergeladen. Problem besteht leider weiter :/
 
Wenn ich php -v von einem User Account aus ausführe bekomme ich diese Fehlermeldung:

Code:
Failed loading /usr/lib/php/20151012/ioncube_loader_lin_7.1.so:  /usr/lib/php/20151012/ioncube_loader_lin_7.1.so: undefined symbol: zend_interrupt_function
PHP 7.0.28-0ubuntu0.16.04.1 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.28-0ubuntu0.16.04.1, Copyright (c) 1999-2017, by Zend Technologies
 
Mach mal:

Code:
grep -rl ioncube_loader_lin_7.1.so /etc

und

Code:
grep -rl ioncube_loader_lin_7.1.so /opt/plesk
 
Okay... Asche über mein Haupt. Es ging natürlich nicht um die Plesk PHP Versionen sondern um die Vendor PHP Version. Hätte ich sehen können :D

Aus irgendeinem Grund hat das Plesk Update den Pfad zu ioncube in der vendor php geändert. Wenn zukünftig jemand das selbe Problem hat:

Code:
/etc/php/7.0/cli/conf.d/00-ioncube-loader-7.1.ini
/etc/php/7.0/apache2/conf.d/00-ioncube-loader-7.1.ini
/etc/php/7.0/cgi/conf.d/00-ioncube-loader-7.1.ini
/etc/php/7.0/fpm/conf.d/00-ioncube-loader-7.1.ini

muss entsprechend angepasst werden.

Danke euch allen
 
Nutzer sollten sich angewöhnen sowas mit Pfad zu testen und nicht darauf zu spekulieren, dass irgendein PHP sich schon automatisch richtig anbietet.

Es hatte schon einen Grund warum ich früher nicht
php
schrieb, sondern
/opt/plesk/php/7.1/bin/php

Na ja, dann werkel mal schön weiter in den Konfigurationen, ich hoffe du weißt was du tust. Viel Erfolg.
 
Viel Erfolg.

Auch wenn du pissed zu sein scheinst..

.. lagst du leider daneben. Mit php glotzen war goldrichtig da es die OS php Version war.

Jetzt wieder locker machen und die Sonne geniessen..

@TO: Du könnst noch deine Vendor php Versionen mit php_handler umbenennen damit den Usern auch die aktuelle Version angezeigt wird..

Code:
plesk bin php_handler --update -id cgi -name "7.0.28"
plesk bin php_handler --update -id fastcgi -name "7.0.28"
plesk bin php_handler --update -id fpm -name "7.0.28"
plesk bin php_handler --update -id module -name "7.0.28"
 
Wenn zukünftig jemand das selbe Problem hat:
Code:
/etc/php/7.0/cli/conf.d/00-ioncube-loader-7.1.ini
/etc/php/7.0/apache2/conf.d/00-ioncube-loader-7.1.ini
/etc/php/7.0/cgi/conf.d/00-ioncube-loader-7.1.ini
/etc/php/7.0/fpm/conf.d/00-ioncube-loader-7.1.ini
muss entsprechend angepasst werden.
Und schon wieder PHP-7.0 und PHP-7.1 vermischt, womit dem API-Mismatch weiterhin nicht (dauerhaft) abgeholfen ist.

Warum packst Du den ioncube für PHP-7.1 und seine Konfiguration nicht in die dafür vorgesehenen Verzeichnisse und löst damit das API-Mismatch Problem ganz einfach automatisch, transparent und ohne Nebenwirkungen?
 
Joe bei Knallbuntu liegt die Standard Konfig in /etc/php/$version ..

Er muß einfach dort anstatt den 7.1 Loader den 7.0 Loader eintragen..

Die Plesk Php Versionen liegen hingegen in /opt/plesk/php/$version . Die haben aber hiermit erstmal nix zu tun..
 
Back
Top