1、查看模块是否安装并进入php模块的安装目录
[root@daixuan ext]# /usr/local/php/bin/php -m | grep -i curl
[root@daixuan ext]# pwd
/usr/local/src/php-5.4.45/ext
[root@daixuan ext]# ls 所有的模块都是可以安装的,部分已经安装
curl mssql pdo_oci simplexml tokenizer
gettext mysql pdo_odbc skeleton
date gmp mysqli wddx
[root@daixuan ext]# cd curl
[root@daixuan curl]# ls
config.m4 CREDITS interface.c package.xml streams.c
config.w32 curl.dsp multi.c php_curl.h tests
2、生成curl的模块configure可执行文件
[root@daixuan curl]# /usr/local/php/bin/phpize 生成configure可执行文件
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
[root@daixuan curl]# ls
acinclude.m4 config.h.in config.w32 ltmain.sh package.xml
aclocal.m4 config.m4 CREDITS Makefile.global php_curl.h
autom4te.cache config.sub curl.dsp missing run-tests.php
build configure install-sh mkinstalldirs streams.c
config.guess configure.in interface.c multi.c tests
3、配置编译参数(如果有错,可能是缺少库)
[root@daixuan curl]# ./configure --with-php-config=/usr/local/php/bin/php-config
4、编译
[root@daixuan curl]# make
Build complete.
Don't forget to run 'make test'.
5、安装
[root@daixuan curl]# make install
Installing shared extensions:/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/
[root@daixuan curl]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/
curl.so
6、配置PHP.ini添加curl.so模块
[root@daixuan curl]# vim /usr/local/php/etc/php.ini
添加一行:extension=curl.so
[root@daixuan curl]# /usr/local/php/bin/php -m
[PHP Modules]
bz2
Core
ctype
curl 发现curl动态模块已经加载
[root@daixuan curl]# vim vim /usr/local/php/logs/php_errors.log 如果不能加载,查看错误日志
[root@daixuan curl]# grep '^extension=' /usr/local/php/etc/php.ini 查看已经加载的动态模块
extension=curl.so
知识点:extension.dir是存放扩展模块的,在哪里呢?
[root@daixuan curl]# /usr/local/php/bin/php -i | grep extension.dir
extension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525 => /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525
sqlite3.extension_dir => no value => no value
[root@daixuan curl]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525
curl.so
如果想修改extension.dir(扩展模块的默认目录),该怎么做呢?
[root@daixuan curl]# vim /usr/local/php/etc/php.ini
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
; extension_dir = "ext" 将其修改为指定的目录
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。