首页 > Web开发 > 详细

php扩展模块如何安装

时间:2016-01-07 01:27:00      阅读:361      评论:0      收藏:0      [点我收藏+]

我们编译完php之后,它有一个功能可以查看所有加载的模块,这些模块会包含一些静态的也会包含一些动态的

[root@zhangmengjunlinux curl]# /usr/local/php/bin/php -m  

一些动态的可以再php.ini也就是php的配置文件里去定义,有时候在我们编译完php之后发现少了一些模块没有编译进来,解决办法有两种:

  1. 第一去重新编译安装,找到你的源码包重新来一遍

  2. 第二种使用动态的方式把它加载进来,你单独的编译出来的模块就可以了,类似于apache的动态模共享模块,现在我们来尝试编译动态模块

技术分享

很多模块的源码包都在ext目录下,假如说我们没有curl,编译一下curl

[root@zhangmengjunlinux ext]# cd curl  进入它的源码下,可以编译一个模块

[root@zhangmengjunlinux curl]# ls 

config.m4  config.w32  CREDITS  curl.dsp  interface.c  multi.c  package.xml  php_curl.h  streams.c  tests

[root@zhangmengjunlinux curl]# /usr/local/php/bin/phpize    用这个命令可以目的是为了生成                                                               configuring生成这个可执行文件

Configuring for:

PHP Api Version:         20090626

Zend Module Api No:      20090626

Zend Extension Api No:   220090626

技术分享

好了我们去编译安装

技术分享[root@zhangmengjunlinux curl]# ./configure --with-php-config=/usr/local/php/bin/php-config 

这个是固定的语法,一般编译不会有错,往往是因为少了什么库,然后make,makeinstall

install的时候它会把模块的文件放在这个目录下技术分享

接下来就是去php.ini配置文件中把配置一下,把这个模块加载进来就可以了,extension_dir是存放这些扩展模块的,那我们应该去找一下她的extension到底在哪了

技术分享

extension_dir也是可以自定义的,我们去配置一下extension_dir

技术分享

保存退出,这个时候我们可以查看curl模块是不是已经加载进来了

技术分享

好了我们看到已经加载进来了,我们如何看动态加载的模块有那些呢,可以再php.ini里去grep

[root@zhangmengjunlinux curl]# grep ‘^extension=‘ /usr/local/php/etc/php.ini 

extension=curl.so

其实我们最终过滤出来只有一行,说明只有curl.so它是动态的

本文出自 “田埂上的梦” 博客,请务必保留此出处http://mengjunlinux.blog.51cto.com/10772888/1732252

php扩展模块如何安装

原文:http://mengjunlinux.blog.51cto.com/10772888/1732252

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!