无法使用php-fpm

时间:2015-11-28 16:18:31

标签: php ioncube

当启用ioncube-loader扩展时,PHP5-FPM将无法启动。

我做了什么:

先决条件:

OS:

> uname -a
Linux halali 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u4 (2015-09-19) x86_64 GNU/Linux

PHP:

> php -v
PHP 5.6.14-0+deb8u1 (cli) (built: Oct  4 2015 16:13:10) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
    with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans

启用扩展程序的步骤:

wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xfv ioncube_loaders_lin_x86-64.tar

由于我的VM中安装了php 5.6,我将5.6版本的ioncube加载程序复制到扩展目录/ usr / lib / php5 / 20131226中。

> php -i | grep extension_dir
extension_dir => /usr/lib/php5/20131226 => /usr/lib/php5/20131226

> ls -l /usr/lib/php5/20131226/
total 4200
-rw-r--r-- 1 root root   89240 Oct  4 16:23 curl.so
-rw-r--r-- 1 root root  114200 Oct  4 16:23 gd.so
-rw-r--r-- 1 root root   23656 Oct 25  2014 geoip.so
-rw-r--r-- 1 root root  384200 Oct 21  2014 imagick.so
-rw-r--r-- 1 root root  415168 Oct  4 16:23 intl.so
-rwxr-xr-x 1 root root 1418736 Nov 28 15:59 ioncube_loader_lin_5.6.so
-rw-r--r-- 1 root root   39696 Aug  1  2014 json.so
-rw-r--r-- 1 root root   48072 Oct  4 16:23 mcrypt.so
-rw-r--r-- 1 root root  107880 Oct 25  2014 memcached.so
-rw-r--r-- 1 root root  103720 Oct 25  2014 memcache.so
-rw-r--r-- 1 root root  155560 Oct  4 16:23 mysqli.so
-rw-r--r-- 1 root root   60504 Oct  4 16:23 mysql.so
-rw-r--r-- 1 root root  160344 Oct  4 16:23 opcache.so
-rw-r--r-- 1 root root   32072 Oct  4 16:23 pdo_mysql.so
-rw-r--r-- 1 root root  122440 Oct  4 16:23 pdo.so
-rw-r--r-- 1 root root   31576 Oct  4 16:23 readline.so
-rw-r--r-- 1 root root  865166 Aug 25  2014 xdebug.so
-rw-r--r-- 1 root root   98728 Nov 28 15:27 xhprof.so

在/etc/php5/fpm/php.ini中,我添加了以下行:

extension=ioncube_loader_lin_5.6.so

但是,php5-fpm无法启动:

sudo /etc/init.d/php5-fpm restart
[....] Restarting php5-fpm (via systemctl): php5-fpm.serviceJob for php5-fpm.service failed. See 'systemctl status php5-fpm.service' and 'journalctl -xn' for details.
 failed!

我还尝试在php-ini中添加.so-File的完整路径和文件名。它不会起作用

1 个答案:

答案 0 :(得分:1)

在你的php.ini中你必须写:

zend_extension=/usr/lib/php5/20131226/ioncube_loader_lin_5.6.so

而不是

extension=...

不同之处在于,离子立方体加载器是xdebug的核心扩展,直接进入zend引擎本身。