php 安装参数./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --enable-zend-multibyte --disable-ipv6 --with-pear --with-curl --enable-bcmath --enable-sockets --with-gettext
-----------------------------------------------------------------------------
php databases support off fail 经查询是缺少mysqli
安装mysqli
需要在php源码中编译出模块然后加载
先介绍点知识:
phpize是什么?php官方说明:http://php.net/manual/en/install.pecl.phpize.phpphpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块。
比如你想在原来编译好的php中加入json或者mysqli等扩展模块,可以使用phpize实现。
当php编译完成后,php的bin目录下会有phpize程序。进入php源码ext下的相关扩展目录,在编译要添加的模块之前,执行phpize就可以生成configure文件。
如果你是rpm包安装php的话,就安装php-devel这个包,就会有phpize命令了。
[root@dante mysqli]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
You have new mail in /var/spool/mail/root
[root@dante mysqli]# ./configure --prefix=/usr/local/mysqli \
> --with-php-config=/usr/local/php/bin/php-config \
> --with-mysqli=/usr/local/mysql/bin/mysql_config
[root@dante mysqli]# make
[root@dante mysqli]# make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/
Installing header files: /usr/local/php/include/php/
vim /usr/local/php/etc/php.ini 在最低行添加 extension=mysqli.so 保存重启php即可.
-------------------------------------------------------------------------------------------------------------------
安装完后发现其实目录/usr/lib/php/modules下有mysqli.so 下次可以尝试直接更改php.ini 不重新安装是否可行.
[root@dante lib]# cd /usr/lib/php/modules
[root@dante modules]# ls
bcmath.so curl.so fileinfo.so json.so mysqli.so mysql.so pdo_mysql.so pdo.so pdo_sqlite.so phar.so sqlite3.so zip.so
参考 http://www.cnblogs.com/rusking/p/4471503.html