php fpm如何增加拓展

php fpm如何增加拓展,第1张

当服务器上PHP已经安装好,需要额外添加PHP扩展时怎么办?不需要重新安装PHP,有了phpize我们可以在原有的PHP基础之上直接安装扩展库。

这次编译仅仅只是单独编译PHP的扩展库,接下来将编译好的扩展库加入到现在运行的php中,不对现在运行的php重新编译,所以没有一点的影响。

下面我们演示安装xsl的扩展(不一定常用,仅做为一个范例)

做法一:

1.找到当前运行的php版本的源代码目录,如php-5.2.3。进入xsl扩展库目录。

$cd /home/pkgs/php-5.3.3/ext/xsl

2.调用phpize程序生成编译配置文件。

$/home/app/php5.3.3/bin/phpize

3.编译扩展库,分别执行下面的configure和make命令。

$./configure-with-php-config=/home/app/php5.3.3/bin/php-config

这一步执行通过后,再执行make命令,如果configure执行不通过,则查找错误原因。

$make

#make成功执行后,生成的扩展库文件在当前目录的 modules子目录下,

如/home/php-5.3.3/ext/curl/modules/xsl.so

4.配置php.ini文件

#将编译好的扩展库文件复制到PHP的扩展目录下,可通过查看phpinfo信息。。

$ cp /home/pkg/php-5.3.3/ext/xsl/modules/xsl.so /home/app/php5.3.3/lib/php/extensions/no-debug-non-zts-20090626

#在php.ini文件中找到设置扩展目录的位置,然后将扩展路径设置到php安装目录/extension/no-debug-non....目录下,并添加扩展库位置。

extension_dir /home/app/php5.3.3/lib/php/extensions/no-debug-non-zts-20090626”

extension=xsl.so

5.重启php,查看phpinfo信息,即可看到刚才添加进去的xsl扩展库。(如果有多个php-fpm进程的话,平滑重启主进程即可:kill -USR2 pid)

php安装好后,可能在初次安装时,会有些模块会有遗漏,但是我们又不想重新编译php,因为耗时是比较长的。我们可不可以在不重新编译安装php的情况下,来为php单独添加某一个模块呢?查找资料,发现还是有方法的,重点就是phpize了,于是写了这篇文章.

下面我们就以单独为php加载mysqli模块为例,演示如何动态为php添加模块。

1、找到php原码安装文件

2、cd /home/php/ext/myslqi

3、运行 /usr/local/php/bin/phpize

4、/configure –with-php-config=/usr/local/php/bin/php-config

5、make &&make install

6、安装完成之后会在系统/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/这个目录下面生成mysqli.so的库文件

7、编辑php.ini文件,指定php到哪人目录读取模块

vi /usr/local/php/etc/php.ini

extension_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613″

extension=mysqli.so

8、重启php服务 /usr/local/php/sbin/php-fpm restart

7、/usr/local/php/bin/php -m|grep mysqli 查看mysqli.so是否存在

如果步骤正确,你的人口也不差的情况下,应该这样php的动态模块加载就完成了。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11655159.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存