如何在PHP中添加Curl扩展:单独编译与完全编译的详细步骤指南
[id_806640540]

如果 php 在系统中已经编译完成,之后又有添加新扩展的需求,那么一种办法是单独对扩展库进行编译,以 extension 的形式来实现扩展;另一种办法则是重新对 php 进行完全编译。
单独编译一个扩展库,并且已经安装了 php,现在需要将这个扩展添加进来。
进入安装原 php 的源码目录。倘若已经删除了相关内容,但仍存有原来的压缩文件,那么只需重新进行解压操作。通常情况下,php 源码的扩展库里本身就已经带有 curl 的扩展,所以无需进行下载,直接对其进行编译扩展即可。
详细步骤如下:
进到对应扩展目录
[root@localhost 执行命令 cd,进入到 /usr/local/php-5.3.28/ext/curl 路径下
[list=1]
[*]调用phpize程序生成编译配置文件[/*]
[/list][root@localhost 执行 curl 命令后,使用 /usr/local/php/bin/phpize 这个命令
Configuring for:
PHP 的 Api 版本为 20090626 。
Zend Module Api 的编号为 20090626
Zend 扩展 API 编号为 220090626。
[list=1]
[调用 configure 来生成 Makefile 文件,接着调用 make 进行编译,最后用 make install 进行安装。[/*]
[/list][root@localhost curl 执行以下命令:./configure ,配置参数为 -with-curl 等于 /usr/local/curl ,以及 -with-php-config 等于 /usr/local/php/bin/php-config 。
[root@localhost curl]# make
[在本地主机的 root 用户下,执行 curl 命令后,接着执行 make install 操作。
在这里会给出生成文件 curl.so 的路径,即 /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ 。
进入这个路径后,将 curl 复制到 extension_dir 目录中。此目录路径可在 phpinfo 中直接查看 php.ini 来获取。
修改php.ini
[在本地主机的 root 用户下,使用 curl 命令执行 vi 命令来打开 /usr/local/lib/php.ini 文件。
[list=1]
[修改位于 /usr/local/lib/php.ini 的 php 配置文件,同时修改扩展库目录。[/*]
[extension_dir 是 "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/";
添加curl扩展 extension = curl.so
[list=1]
[*]重启Apache即可。[/*]
[/list][在本地主机的 root 用户下,使用 curl 命令执行服务 httpd 的重启操作。
方式二:重新完全编译php (不常用)
首先下载curl安装包、然后安装cURL、在安装PHP
具体步骤如下:
CURL下载地址: http://curl.haxx.se/download/curl-7.17.1.tar.gz
[在 root@localhost 的 src 目录下,执行 tar 命令并解压缩 curl-7.17.1.tar.gz 文件,使用的参数是 -zxf 。
[在 root@localhost 的 src 目录下,执行./configure 命令,并设置前缀为 /usr/local/curl
[在本地主机的根目录下的 src 文件夹中执行 make 命令,然后再执行 make install 命令。
安装 php 时,打开开关 –with-curl=/usr/local/curl 就能够完成安装。
php 要求 curl 的目录需具备 include 目录和 lib 目录,同时在 include 目录下要有 easy.h 和 curl.h 这两个文件,在 lib 目录下要有 libcurl.a。经过编译后,include 目录下有了相应文件,但 lib 目录下或许还未具备。原本是生成到 lib/.libs 目录下的,因此需要将其复制到 lib 目录。
其他PHP拓展安装方法参考如下:
linux下为php添加gd扩展的方法
Linux下php安装zlib扩展
linux下为php添加curl扩展的方法