在php5-fpm中加载扩展

时间:2015-01-31 05:37:52

标签: php nginx zephir

我正在我的Nginx / php5-fpm / ubuntu14.04设置上试验Zephir。我按照他们的教程设法编译我的第一个Zephir PHP扩展,没有什么困难。但是,当我尝试通过编辑/etc/php5/fpm/php.ini来包含

来启用新构建的扩展时
extension=/path/to/test.so
发出php -m后,

没有显示 test 扩展名。然后我记得安装mcrypt扩展我使用php5enmod mcrypt。所以我去了/ etc / php5 / mods-available并创建了文件test.ini

extension=/path/to/test.so

然后发出

php5enmod test

一个简单的

service php5-fpm restart && php -m

稍后和lo&看到测试扩展存在!一切都很好,但我仍然不明白php5enmod如何发挥它的魔力。它显然不是写入php.ini文件。对于任何可能解释的人,我都非常感激。

2 个答案:

答案 0 :(得分:1)

php5enmod只是从通常的conf.d(例如:/etc/php5/fpm/conf.d)directoy创建一个符号链接,指向真实文件在mods-available中的位置,前缀为表示模块优先级(默认值:20)的数字。

答案 1 :(得分:0)

我无意中跑了php5enmod,却没有sudo。错误消息很有趣:

rolf@two:/etc/php5$ php5enmod curl
ln: failed to create symbolic link '/etc/php5/fpm/conf.d/20-curl.ini': Permission denied
rm: cannot remove '/var/lib/php5/modules/fpm/disabled_by_maint/curl': Permission denied