目錄
php擴(kuò)展模塊安裝
php擴(kuò)展模塊安裝
PHP一旦編譯完成后,要想再增加一個(gè)功能模塊的話劲蜻,要么重新編譯PHP陆淀,要么直接編譯一個(gè)擴(kuò)展模塊(生成一個(gè).so文件),然后在php.ini中配置一下先嬉,就可以被加載使用了轧苫。
查看PHP都加載的功能模塊
[root@minglinux-01 ~] /usr/local/php/bin/php -m
PHP Deprecated: Comments starting with '#' are deprecated in /usr/local/php/etc/php.ini on line 450 in Unknown on line 0
[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]
- 以擴(kuò)展模塊的形式編譯安裝一個(gè)PHP的redis模塊
[root@minglinux-01 /usr/local/src] wget https://codeload.github.com/phpredis/phpredis/zip/develop
[root@minglinux-01 /usr/local/src] mv develop phpredis-develop.zip
[root@minglinux-01 /usr/local/src] unzip phpredis-develop.zip
[root@minglinux-01 /usr/local/src] cd phpredis-develop/
[root@minglinux-01 /usr/local/src/phpredis-develop] /usr/local/php/bin/phpize //目的是生成configure文件,沒有就無法編譯
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.
//報(bào)錯(cuò)缺少autoconf包疫蔓,所以先安裝該包再生成一次
[root@minglinux-01 /usr/local/src/phpredis-develop] yum install -y autoconf
[root@minglinux-01 /usr/local/src/phpredis-develop] /usr/local/php/bin/phpize //再執(zhí)行一次
Configuring for:
PHP Api Version: 20131106
Zend Module Api No: 20131226
Zend Extension Api No: 220131226
[root@minglinux-01 /usr/local/src/phpredis-develop] ll |grep configure //生成了configure文件
-rwxr-xr-x 1 root root 451368 11月 21 22:04 configure
-rw-r--r-- 1 root root 4690 11月 21 22:04 configure.in
[root@minglinux-01 /usr/local/src/phpredis-develop] ./configure --with-php-config=/usr/local/php/bin/php-config //生成可編譯文件
[root@minglinux-01 /usr/local/src/phpredis-develop] make
[root@minglinux-01 /usr/local/src/phpredis-develop] make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20131226/
// make install的時(shí)候會把編譯好的redis.so放到這個(gè)目錄下面含懊,這個(gè)目錄也是擴(kuò)展模塊存放目錄
[root@minglinux-01 /usr/local/src/phpredis-develop] ls /usr/local/php/lib/php/extensions/no-debug-zts-20131226/
opcache.so redis.so
[root@minglinux-01 /usr/local/src/phpredis-develop] /usr/local/php/bin/php -i |grep extension_dir //可以在php.in自定義該路徑
PHP Deprecated: Comments starting with '#' are deprecated in /usr/local/php/etc/php.ini on line 450 in Unknown on line 0
extension_dir => /usr/local/php/lib/php/extensions/no-debug-zts-20131226 => /usr/local/php/lib/php/extensions/no-debug-zts-20131226
sqlite3.extension_dir => no value => no value
[root@minglinux-01 /usr/local/src/phpredis-develop] /usr/local/php7/bin/php -m|grep redis //未加載redis模塊
-bash: /usr/local/php/bin/php: 沒有那個(gè)文件或目錄
[root@minglinux-01 /usr/local/src/phpredis-develop] vim /usr/local/php/etc/php.ini
extension = redis.so //在php.in中添加這一行
[root@minglinux-01 /usr/local/src/phpredis-develop] /usr/local/php/bin/php -m|grep redis
PHP Deprecated: Comments starting with '#' are deprecated in /usr/local/php/etc/php.ini on line 450 in Unknown on line 0
redis //已經(jīng)加載了redis模塊
redis等模塊不是php自帶,使用時(shí)需要專門下載衅胀。在php源碼包中的ext目錄下有很多模塊岔乔,該目錄下的模塊安裝配置不需要下載,只要進(jìn)入對應(yīng)包的目錄滚躯,執(zhí)行/usr/local/php/bin/phpize在該目錄下生成configure文件雏门,然后生成可編譯文件嘿歌,編譯、安裝即可茁影。生成可編譯文件(即執(zhí)行./configure)時(shí)需要跟參數(shù)--with-php-config=/usr/local/php/bin/php-config搅幅。
[root@minglinux-01 /usr/local/src/php-5.6.30] pwd
/usr/local/src/php-5.6.30
[root@minglinux-01 /usr/local/src/php-5.6.30] ls ext/
bcmath ftp mysqli pgsql standard
bz2 gd mysqlnd phar sybase_ct
calendar gettext oci8 posix sysvmsg
com_dotnet gmp odbc pspell sysvsem
ctype hash opcache readline sysvshm
curl iconv openssl recode tidy
date imap pcntl reflection tokenizer
dba interbase pcre session wddx
dom intl pdo shmop xml
enchant json pdo_dblib simplexml xmlreader
ereg ldap pdo_firebird skeleton xmlrpc
exif libxml pdo_mysql snmp xmlwriter
ext_skel mbstring pdo_oci soap xsl
ext_skel_win32.php mcrypt pdo_odbc sockets zip
fileinfo mssql pdo_pgsql spl zlib
filter mysql pdo_sqlite sqlite3
擴(kuò)展
apache rewrite教程 http://coffeelet.blog.163.com/blog/static/13515745320115842755199/ http://www.cnblogs.com/top5/archive/2009/08/12/1544098.html
apache rewrite 出現(xiàn)死循環(huán) http://ask.apelearn.com/question/1043
php錯(cuò)誤日志級別參考 http://ask.apelearn.com/question/6973
php開啟短標(biāo)簽 http://ask.apelearn.com/question/120
php.ini詳解 http://legolas.blog.51cto.com/2682485/493917