sudo apt-get install libmysqlclient-dev 安装此软件开发包
然后在/usr/include/mysql里可以找到mysql.h (也可以用#find / -name mysql.h命令搜索)
编译的时候 gcc xx.c -o xx -L /usr/include/mysql -l mysqlclient
1.下载
到http://cn2.php.net/downloads.php下载
php-5.5.8.tar.gz
2.安装
解压后进入解压目录,执行
sudo ./configure --prefix=/usr/local/development/php --with-mysql=mysqlnd --with-apxs2=/usr/local/development/http-2.4.2/bin/apxs --with-config-file-path=/usr/local/development/php/etc
(其中,--prefix选项指定了安装目录;--with-mysql选项指定了支持的MySQL服务所在的目录;--with-apxs2选项指定了 PHP要使用的Apache应用所在的目录;--with-config-file-path选项则是指定了PHP配置文件所在的目录。)
直接这样执行后,将会看到这样一个错误:
configure: error: xml2-config not found. Please check your libxml2 installation.
与编译MySQL时相同,这是由于系统缺少PHP所需的库文件导致的,根据提示,进行如下操作:
sudo apt-get install libxml2
将会看到如下信息:
libxml2 libxml2-dev libxml2-headers libxml2-utils
这里需要安装的是libxml2-dev软件包(该软件为Ubuntu-Server自带的,需要使用Ubuntu-Server光盘安装),操作如下:
sudo apt-get install libxml2-dev
3.配置
库文件安装完成后,重新配置PHP,操作如下:
sudo ./configure --prefix=/usr/local/development/php --with-mysql=mysqlnd --with-apxs2=/usr/local/development/http-2.4.2/bin/apxs --with-config-file-path=/usr/local/development/php/etc
4.完成编译安装
编译完成后将会看到“Thank you for using PHP.”的字样,表明PHP已经配置成功了。
接下来编译、安装PHP,操作如下:
sudo make
sudo make install
5.配置Apache服务器
安装完PHP后,还需要手动修改一下Apache的配置,以便使Apache支持PHP,操作如下:
cd /usr/local/development/http-2.4.2/conf
sudo vi httpd.conf
找到“AddType application”部分,在后面添加如下内容:
AddType application/x-httpd-php .php
(如果需要添加默认php索引文件名的支持,则需要找到“DirectoryIndex index.html ”,修改为“DirectoryIndex index.html index.html.var index.php”),修改完成后保存退出。
此外,不要忘了将PHP安装目录中的php.ini-recommended文件拷贝到编译时指定的PHP配置文件目录/opt/php/etc下,在PHP源码包目录“php-5.2.6”中操作如下:
cd /usr/local/src/php-5.5.8
sudo cp php.ini /usr/local/development/php/etc/php.ini
全部配置完成后,不要忘了重启apache,以便使新的配置生效。
sudo /etc/init.d/apachectl restart
6.完成测试
Apache+ PHP的安装配置。可以利用PHP自身的函数进行确认,在web的根目录下创建一个index.php文件,编辑文件内容如下:
<?php
phpinfo();
?>
保存退出后,在浏览器中输入“http://IP/index.php”,如果配置正确,就能够看到刚刚配置好的服务器相关信息了,其中包括 Apache、MySQL以及PHP的版本、安装路径、配置情况等。如果看到的只是“phpinfo();”字样,说明apache没能正确支持PHP,请检查上述的配置过程是否都已经正确完成。
7.特别说明
在php配置过程中有
配置命令行中有 --with-mysql=/usr/include/mysql
此时出现如下错误
configure: error: Cannot find MySQL header files under /usr/include/mysql
网上查到如下方式解决(此方式未成功,在此仅作为记录)
sudo apt-get install libmysqlclient-dev 安装此软件开发包
然后在/usr/include/mysql里可以找到mysql.h (也可以用#find / -name mysql.h命令搜索)
编译的时候 gcc xx.c -o xx -L /usr/include/mysql -l mysqlclient
最终解决方案
sudo ./configure --prefix=/usr/local/development/php --with-mysql=mysqlnd --with-apxs2=/usr/local/development/http-2.4.2/bin/apxs --with-config-file-path=/usr/local/development/php/etc
即使用如下配置参数
--with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-pdo-mysql=mysqlnd