PHP单独添加扩展 无需重启服务器

PHP单独添加扩展 无需重启服务器,第1张

问题

php自身提供了很多扩展,比如curl,gmp, mbstring等等。我们在编译安装php时未必安装了所有扩展。那么在安装完php后,如果想单独安装某个php自身的扩展怎么办呢?

我们以curl扩展模块的安装为例说明如何单独添加扩展。

步骤

1.进入php源码的扩展目录。本例中我的源码对应目录如下:

/search/src/php-7.0.14/ext

1

2.进入模块目录,我们安装的是curl扩展,所以进入curl目录。此时,我们所在的目录是

/search/src/php-7.0.14/ext/curl

1

3.执行phpize。注意,如果你的机器上有多个php版本,一定要执行你准备安装扩展的php版本对应的phpize。比如,我的机器上同时有php7和php5.3.3。我当前准备为php7安装curl扩展。所以执行php7对应的phpize

1 /usr/local/php70/bin/phpize

2

3 结果类似:

4 Configuring for:

5 PHP Api Version: 20151012

6 Zend Module Api No: 20151012

7 Zend Extension Api No: 320151012

4.执行

./configure --with-php-config=/usr/local/php70/bin/php-config

1

说明:如果你的机器上只有一个php版本,大多时候不需要特别使用–with-php-config指明相应的php-config所在位置。

5.执行make,之后会在./modules/目录下生成curl.so文件

6.执行make install

结果类似:

Installing shared extensions: /usr/local/php70/lib/php/20151012/

1

2

执行结果告诉你将curl.so安装到了哪个目录。

一般情况,如果你正确的指定了php-config或者你的机器只有一个php版本,so都会被正确安装到相应php的extension_dir。如果执行make install后,extension_dir目录下没有相应的so,可以手动将第5步中生成的so文件cp过去。

要查看具体extension_dir,可以执行如下命令。

php -i| grep extension_dir

结果类似

extension_dir =>/usr/local/php70/lib/php/20151012/ =>/usr/local/php70/lib/php/20151012/

1

2

3

7.在php.ini中增加

extension=curl.so

1

如果不知道php.ini的具体位置,可以通过如下命令查看

php --ini

1

8.执行如下命令,查看是否安装成功

php -m | grep curl

1

如果你看到了curl, 恭喜你,安装成功!

curl是一个广泛使用的用来上传和下载的命令行工具,当然严格来讲,它还可以有别的用途。对于测试来讲,它是Web相关测试非常实用的工具,包括debugging,使用起来非常方便。

下面直接进入主题:

1、直接进入到php源码包中找到原先安装PHP的源码包文件①;

2、直接进入/usr/package/php-7.1.10/ext/curl目录②;

cd /usr/package/php-7.1.10/ext/curl

3、通过phpize工具生成configure文件③;

/usr/local/php/bin/phpize

4、将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系④;

./configure --with-php-config=/usr/local/php/bin/php-config

5、编译程序并安装文件;

make &&make install

6、在php的配置文件php.ini最后一行添加extension=curl.so即可。

相关解释(带圆圈的数字编号)可参考:https://panxu.net/article/8392.html

curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。

在xampp集成环境中,curl自带,只不过默认关闭。

vim /etc/php.ini

注:此处的/etc/php.ini 请找到自己的php.ini路径

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

然后找到:

extension=php_curl.dll

在Vim下搜索字符串方法如下:

1、命令模式下输入“/字符串”,例如“/Section 3”。

2、如果查找下一个,按“n”即可。

要自当前光标位置向上搜索,请使用以下命令:

/pattern Enter

将extension=php_curl.dll的注释去掉,保存退出

:x    写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。

最后重启服务即可

service httpd restart


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/143580.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存