LAMP搭建18:PHP安装扩展模块-创新互联

查看PHP模块

在孟连等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、网站制作 网站设计制作定制开发,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销推广,成都外贸网站建设,孟连网站建设费用合理。

[root@centos6 ~]# php -m

[PHP Modules]

bz2

Core

ctype

date

dom

ereg

exif

fileinfo

filter

gd

hash

iconv

json

libxml

mbstring

mcrypt

mysql

openssl

pcre

PDO

pdo_sqlite

Phar

posix

Reflection

session

SimpleXML

soap

sockets

SPL

sqlite3

standard

tokenizer

xml

xmlreader

xmlwriter

zlib

[Zend Modules]

如果我们发现有一个模块没有编译进来,解决办法有两种:第一,需要重新编译,重新配置;第二,单独编译该模块,使用动态共享的方式加载该模块。我们自己尝试编译一个PHP动态共享模块。

PHP安装包的ext目录下包含了许多模块的源代码:

[root@centos6 ~]# cd /usr/local/src/php-5.4.36

[root@centos6 php-5.4.36]# cd ext

[root@centos6 ext]# ls

bcmath    dba         fileinfo  iconv    mbstring  odbc      pdo_mysql  posix    simplexml  standard  wddx    zlib

bz2     dom         filter   imap    mcrypt   openssl    pdo_oci   pspell    skeleton  sybase_ct  xml

calendar   enchant       ftp    interbase  mssql   pcntl     pdo_odbc   readline   snmp    sysvmsg   xmlreader

com_dotnet  ereg         gd     intl    mysql   pcre      pdo_pgsql  recode    soap    sysvsem   xmlrpc

ctype    exif         gettext  json    mysqli   pdo      pdo_sqlite  reflection  sockets   sysvshm   xmlwriter

curl     ext_skel       gmp    ldap    mysqlnd  pdo_dblib   pgsql    session   spl     tidy    xsl

date     ext_skel_win32.php  hash    libxml   oci8    pdo_firebird  phar     shmop    sqlite3   tokenizer  zip

PHP默认没有没有安装curl模块,下面命令返回无结果:

[root@centos6 ext]# php -m |grep -i curl

我们以编译安装PHP的curl模块为例进行说明:进入curl目录

[root@centos6 ext]# cd curl

[root@centos6 curl]# ls

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

生成configure相关的文件:

[root@centos6 curl]# yum install -y  m4 autoconf #安装两个自动生成configure的工具

[root@centos6 curl]# /usr/local/php/bin/phpize #生成configure

Configuring for:

PHP Api Version:     20100412

Zend Module Api No:    20100525

Zend Extension Api No:  220100525

[root@centos6 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

配置

[root@centos6 curl]# ./configure --with-php-config=/usr/local/php/bin/php-config

错误1:configure: error: Please reinstall the libcurl distribution -

easy.h should be in /include/curl/

解决:[root@centos6 curl]#  yum -y install curl-devel

编译

[root@centos6 curl]# make

[root@centos6 curl]# echo $?

0

安装

[root@centos6 curl]# make install

Installing shared extensions:   /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

[root@centos6 curl]# echo $?

0

模块已生成

[root@centos6 curl]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

curl.so

查看extension_dir

[root@centos6 curl]# 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@centos6 curl]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

curl.so

也可以自定义extension_dir

[root@centos6 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"

……

配置加载curl.so

……

;extension=php_pgsql.dll

;extension=php_pspell.dll

;extension=php_shmop.dll

extension=curl.so

……

查看动态加载的模块

[root@centos6 curl]# php -m |grep curl

curl

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享标题:LAMP搭建18:PHP安装扩展模块-创新互联
网站URL:http://scyanting.com/article/dhosdc.html