Linux下安装mysql和curl扩展

在安装好apache2+php5之后,现在又想装上个mysql5玩玩。用源码安装好mysql5之后,发现原来在Linux想为php添加新扩展,不像在windows上面,去掉分号注释就行了的~在网上查询了很多资料,终于搞定,特写日记以示祝贺。

添加扩展的基本步骤:1、进入php源代码目录:# cd /usr/ChenShao/php-5.3.1/2、再进入要添加的mysql扩展源码目录:# cd ext/mysql/3、调用已经编译好的php里面的phpize:# /usr/local/php5/bin/phpize在这一步骤可能又会出现新的问题:这里给出网上的解决方案.....

02 Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script

运行/usr/local/webserver/php/bin/phpize时出现:Configuring for:PHP Api Version: 20041225Zend Module Api No: 20060613Zend Extension Api No: 220060519Cannot find autoconf. Please check your autoconf installation and the$PHP_AUTOCONF environment variable. Then, rerun this script.根据网上的解决办法是:

# cd /usr/src# wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz# tar -zvxf m4-1.4.9.tar.gz# cd m4-1.4.9/# ./configure && make && make install# cd ../# wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz# tar -zvxf autoconf-2.62.tar.gz# cd autoconf-2.62/# ./configure && make && make install可爱的yum让我更容易把没安装的包安装好yum install m4yum install autoconf

3、然后configure:# ./configure --with-php-config=/usr/local/php5/bin/php-config --with-mysql=/usr/local/mysql(/usr/local/mysql 为mysql的安装目录)4、make && make install5、编译之后,自动把mysql.so放到了默认的php扩展目录下(phpinfo可查看,我的为 /usr/local/php5/lib/php/extensions/no-debug-zts-20090626),再修改php.ini,去掉;extension=php_mysql.so前面的分号。不过有一点需要注意的是,生成的模块名叫mysql.so,跟php.ini里面的php_mysql.so名字不一致,必须把mysql.so改名为php_mysql.so,切记切记~! 可以用MV 指令 源文件 目标文件6. 添加扩展模块:CURL :参考这个方法可以-------------------------

安装某些PHP源码如CMSTOP时需求系统开启curl扩展,这需要修改PHP的配置,在Windows 中只需简单三步。一、window下安装php_curl支持1.将PHP安装文件夹下的三个文件php_curl.dll(可能在ext文件夹中),libeay32.dll,ssleay32.dll 复制到 %windir%/system32下;2.打开php.ini(可能在PHP环境的安装目录下,默认在c:\WINDOWS目录下),将;extension=php_curl.dll头部的分号去掉;3.重启php的服务(apache或者IIS),如重启IIS,运行iisreset即可。二、linux中php如何安装curl扩展如果php已经在系统编译好,后来又需要添加新的扩展,一种方式就是重新完全编译php,另一种方式就是单独编译扩展库,以extension的形式扩展。情况一:全新安装php 和curl首先下载curl安装包(我的php是4.4.4的,下载最新的curl 7.16 不能使用,最后下载7.14的才可以,下载要注意一下版本)然后安装cURL# tar -zxf (此处填下载的curl包名称)# ./configure –prefix=/usr/local/curl# make; make install安装php时,只要打开开关 –with-curl=/usr/local/curl就可以了。php要求curl的目录要有include和lib目录,并且include下要有easy.h和curl.h两个文件,lib下要有libcurl.a。经编译后include下的文件有了,但是lib目录下可能还没有。原来生成到lib/.libs目录下,所以要copy到lib目录。情况二:已经安装了php,现在需要添加这个扩展进入安装原php的源码目录,(如果删了,但是还有原来的压缩文件的话,重新解压就行)cd ext/curlphpize (这里还是要引用 /usr/local/php5/bin/phpize)执行 ./configure –with-curl=DIR (可以不写dir,如果你的curl安装时没有指定目录)./configure --with-php-config=/usr/local/php5/bin/php-config --with-curl=/usr/local/mysqlmake 》&& make install 和上述安装mysql扩展类似就会在PHPDIR/ext/curl/moudles/下生成curl.so的文件。复制curl.so文件到extensions的配置目录,修改php.ini就好了以上两种就是Linux下php扩展cURL的安装方法。

7、重启apache:# service httpd restart特别注意:如果第3步通过了,但第4步报错,很有可能是源代码的问题,我是从php.net新下载了一份之后,再来编译才通过的。

还有要更改php.ini的extension 把前面的注释去掉 在linux下要把结尾的dll 改为so

本文内容整理自网络, 文中所有观点看法不代表淘大白的立场