linux 下给php安装扩展

源码包安装扩展

php有很多扩展,mysqli扩展,redis扩展,curl扩展等等,需要的时候需要你手动安装。
查看php已经安装的扩展:

# php -m

php在常用 扩展在源码包的ext文件夹下有,需要的时候进去安装就行了;如果没有,就自己去http://pecl.php.net下载,原理是一样的。下面,已安装curl扩展为例.

1.安装之前需要2个工具,一个是phpize(编译出configure文件用的),和php-config(编译扩展的时候要用。查看这2个工具的位置:

# which phpize
# which php-config

我自己本机的路径分别 这样的:

/usr/local/php/bin/phpize 

 /usr/local/php/bin/php-config 

如果没有,只要安装php-devel(包含了phpize和php-config)就行了:

# yum -y install php-devel

2.接下来进入到源码包的ext目录下,里面有很多文件夹,每一个都是一个扩展。进入到curl扩展包里面:

# cd /usr/local/jw/php-7.1.5/ext/curl

3.执行命令(不执行的话,这个文件夹下面是没有configure文件的):

# /usr/local/php/bin/phpize

4.然后开始configure,:

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

这一步可能会报错:

# configure: error: Please reinstall the libcurl distribution -
easy.h should be in /include/curl/

没关系,我们安装libcurl-devel就好了,yum安装就行:

# yum -y install libcurl-devel

然后再执行前面的操作:

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

接着编译和安装:

# make 
# make install

安装成功后会显示下面的路径:

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

运行下面命令:

# /usr/local/php/bin/php -i |grep 'extension_dir'  

结果是:

# 
extension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303 => /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303
sqlite3.extension_dir => no value => no value

可以发现,模块就是安装在extension_dir目录下。
接着修改php.ini配置:

# vim /usr/local/php/etc/php.ini 

找到extension=php_shmop.dll,该行下面添加如下信息:
extension=curl.so。
接着查看是否加载成功:

#  php -m | grep curl

如果出来curl说明没问题了,然后重启服务器就好了,可以访问phpinfo()去看curl扩展。

方式二:使用pecl安装php扩展

1.去官网 :http://pecl.php.net/ 然后搜索需要安装的扩展包
linux 下给php安装扩展_第1张图片
2.比如搜索swoole,搜索结果如下:
linux 下给php安装扩展_第2张图片
3 如果想安装版本为1.9.23的,就使用下列命令:
pecl install swoole-1.9.23
4 安装完成后,还需要编辑 php.ini 文件,在文件的最后面加入以下内容(注:有时候不用加,自动加上去了)
[swoole]
extension=swoole.so

ps:查看php.ini路径命令: php -i |grep php.ini

你可能感兴趣的:(linux)