一、环境
LAMP都是源码安装,PHP安装的时候没有配置pdo_mysql和mysqli,pdo是php5默认带的。
PHP5的源码都在,只需要把php5的模块功能扩展就可以了。
php源码目录:/usr/local/src/php-5.2.10
php安装目录:/usr/local/php/
php源码配置文件:/usr/local/php/bin/php-config
php程序配置文件:/usr/local/php/etc/php.ini
二、模块的编译安装
[root@anpc ~] cd /usr/local/src/php-5.2.10/ext/pdo [root@anpc pdo] /usr/local/php/bin/phpize [root@anpc pdo] ./configure –with-php-config=/usr/local/php/bin/php-config [root@anpc pdo] make [root@anpc pdo] make test [root@anpc pdo] make install [root@anpc ~] cd /usr/local/src/php-5.2.10/ext/pdo_mysql [root@anpc pdo_mysql] /usr/local/php/bin/phpize [root@anpc pdo_mysql] ./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo- mysql=/usr/local/mysql [root@anpc pdo_mysql] make [root@anpc pdo_mysql] make test [root@anpc pdo_mysql] make install [root@anpc ~] cd /usr/local/src/php-5.2.10/ext/mysqli [root@anpc mysqli] /usr/local/php/bin/phpize [root@anpc mysqli] ./configure –with-php-config=/usr/local/php/bin/php-config –with- mysqli=/usr/local/mysql/bin/mysql_config [root@anpc mysqli] make [root@anpc mysqli] make test [root@anpc mysqli] make install
备注:
注意安装时目录的位置一定要正确,不然模块不能加载。
命令/usr/local/php/bin/phpize必须在安装的目录执行。
安装完后会产生三个so模块:
/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo.so /usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo_mysql.so /usr/local/php/lib/php/extensions/no-debug-zts-20060613/mysqli.so
三、PHP配置文件的配置
更改php.ini配置,添加模块:
vi /usr/local/php/etc/php.ini extension=/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo.so extension=/usr/local/php/lib/php/extensions/no-debug-zts-20060613/pdo_mysql.so extension=/usr/local/php/lib/php/extensions/no-debug-zts-20060613/mysqli.so
服务重启:
service mysqld restart
service apached restart
四、环境测试:
1、php5环境查看(建立php函数):
vi phpinfo.php <?php phpinfo(); ?>
访问phpinfo.php页面,查看模块扩展存不存在:
http://127.0.0.1/phpinfo.php
备注:
如果函数不能使用,更改配置开放函数的使用权限。
[root@anpc ~] vi /usr/local/php/etc/php.ini disable_functions = phpinfo,passthru,…..
删除phpinfo这个函数保存即可。
[root@anpc ~] service apached restart
2、mysqli连接测试(建立网页测试连接)。
vi mysqlidb.php $mysqli = new mysqli(“localhost”, “dbusername”, “dbpassword”, “dbname”); /* check connection */ if (mysqli_connect_errno()) { printf(“Connect failed: %s\n”, mysqli_connect_error()); exit(); } printf(“Host information: %s\n”, $mysqli->host_info); /* close connection */ $mysqli->close(); ?>
访问建立的php测试页:
http://127.0.0.1/mysqlidb.php