搭建測試環境時遇到的問題:使用firefox 瀏覽測試頁返回空白頁,沒有報錯信息
原因:
Php版本是5.2,雖然在安裝的時候指定了mysql擴展,但是安裝時並沒有裝上
解決辦法:
1、進入php源代碼目錄:
[root@localhost /]# # cd cd/usr/local/php-5.2.11
2、再進入要添加的mysql擴展源碼目錄:
[root@localhost php-5.2.11]cd ext/mysql/
[root@localhost mysql]# yuminstall autoconf (CentOS 5.4需安裝)
3、調用已經編譯好的php可執行程序phpize:
[root@localhost mysql]/usr/local/php/bin/phpize
4、然後configure:
[root@localhostmysql]#./configure --with-php-config=/usr/local/php/bin/php-config--with-mysql=/usr/local/mysql/--with-zlib-dir=/usr/local/lib
注意:
/usr/local/mysql爲mysql的安裝目錄
5、編譯安裝
[root@localhostmysql]#make
[root@localhost mysql]#makeinstall
6、編譯完成之後,將會自動把mysql.so放到了默認的php擴展目錄下(phpinfo可查看,我的爲/usr/local/php/lib/php/extensions/no-debug-zts-20090626),再修改php.ini,去掉;extension=mysql.so前面的分號。如果沒有這句,需要自行添加。
不過有一點需要注意的是,生成的模塊名叫mysql.so,跟php.ini裏面的php_mysql.so名字不一致,必須把mysql.so改名爲php_mysql.so,也可修改php.ini中的文件名,總之文件名必須一致.
7、重啓php-fpm
8、查看mysql擴展有沒有添加成功
/usr/local/php-cgi/bin/php -m
注:Configure時報錯:configure:error: mysql configure failed. Please checkconfig.log for more information:想起我的系統都是X86的,lib都是64位的.所以解決方法很容易.這個libmysqlclient.alibrary 是在/usr/lib64/mysql, 不是在/usr/lib/mysql.所以可以做下面的方法來解決
#exportLDFLAGS=-L/usr/lib64/mysql
OR請將Makefile裏面的
-L/usr/lib/mysql改爲
-L/usr/lib64/mysql