php擴展模塊安裝

11月21日任務
11.32 php擴展模塊安裝php

 

狀況說明

在不少狀況下,以前編譯安裝php時,有些模塊並無被編譯進軟件,咱們能夠在後期根據本身的須要進行編譯安裝,將某個模塊編譯進入php。mysql

編譯安裝前的準備

從新編譯須要autoconf包git

[root@localhost ftp]# /usr/local/php5/bin/phpize 
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

[root@localhost ftp]# yum install -y autoconf

安裝範例

以redis爲例(redis一般在lamp中做爲緩存使用)github

下載redis包(第三方模塊包須要下載,php源碼包內的ext目錄下包含一些經常使用的模塊包)redis

[root@localhost src]# wget https://codeload.github.com/phpredis/phpredis/zip/develop 

# 下載的develop是一個zip包
[root@localhost src]# mv develop phpredis-develop.zip
[root@localhost src]# unzip phpredis-develop.zip

生成configure文件(前提要安裝autoconf)sql

[root@localhost phpredis-develop]# yum install -y autoconf

[root@localhost phpredis-develop]# /usr/local/php7/bin/phpize 
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303

安裝緩存

[root@localhost phpredis-develop]# ./configure --with-php-config=/usr/local/php7/bin/php-config 
[root@localhost phpredis-develop]# make
[root@localhost phpredis-develop]# make install
Installing shared extensions:     /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
# 這個目錄時存放so文件的目錄

查看php7

[root@localhost phpredis-develop]# /usr/local/php7/bin/php -i |grep -i extension_dir
extension_dir => /usr/local/php7/lib/php/extensions/no-debug-zts-20160303 => /usr/local/php7/lib/php/extensions/no-debug-zts-20160303
sqlite3.extension_dir => no value => no value

修改PHP配置文件php.inithis

[root@localhost phpredis-develop]# vi /usr/local/php7/etc/php.ini
加入一行extension=redis.so


[root@localhost phpredis-develop]# /usr/local/php7/bin/php -m | grep redis
redis

額外說明

php的大部分模塊均可以這樣進行安裝。spa

有一個須要額外注意:mysqli模塊

前文第三步中編譯mysqli時編譯參數須要額外指定mysql_config文件

[root@localhost mysqli]# ./configure --with-php-config=/usr/local/php5/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
相關文章
相關標籤/搜索