环境:VM-centos6.4、apache2.4.3、mysql-5.x
如果没有安装,可以参考本人之前的安装博客
Apache-2.4.3安装:http://blog.youkuaiyun.com/qq_23146763/article/details/53446763
Mysql-5.x安装:http://blog.youkuaiyun.com/qq_23146763/article/details/53440486
一、准备PHP安装包
libmcrypt-2.5.8.tar.gz(http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/)
php-5.6.28.tar.gz (http://www.php.net/downloads.php)
二、首先添加依赖应用
yum install -y gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c xmlrpc-c-devel
这一步是为了支持一些php运行的东西,还有以下编译需要的
三、安装加密扩展库
cd /usr/local/src/
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make
make install
四、编译、安装及错误解决
步骤一:
tar zxvf php-5.6.28.tar.gz
cd php-5.6.28
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mysql-sock --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-fpm --enable-soap --with-libxml-dir --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --disable-mbregex --disable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-pdo-mysql --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear --enable-bcmath
这一步不能有错误,警告可能会有,是说某些包不能识别之类的,一般没有很大问题
mysql错误解决:configure: error: Cannot find libmysqlclient_r under /usr/local/mysql.
cd /usr/local/mysql/lib/mysql/
#libmysqlclient.so.15.0.0更改为自己的版本
ln -s libmysqlclient.so.15.0.0 libmysqlclient_r.so
步骤二:
make
显示
Build complete.
Don’t forget to run ‘make test’.
【
如果显示: undefined reference to `ts_resource_ex’
collect2: ld returned 1 exit status
make: * [sapi/cli/php] 错误 1
出现这样的错误信息是我之前用不同的参数编译过PHP。
解决方法:执行make clean删除上次的编译结果,然后再重新编译就OK了。
如果是你第一次编译就出现这样的错误,百度解决。
】
步骤三:
make install
五、配置apache支持php
修改apache的配置文件httpd.conf
vi /usr/local/apache2/conf/httpd.conf
然后在文本最后面添加
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
在DirectoryIndex增加index.php,如DirectoryIndex index.html index.php
(注意,在apache安装目录下,modules下有libphp5.so,这是php安装时添加进去的,如果没有,php,你需要重装下
生成libphp5.so文件的是./configure中的这段代码 –with-apxs2=/usr/local/apache/bin/apxs,路径要和你安装的路径对应
)
接下来复制php启动文件
cp php-5.6.3/php.ini-development /usr/local/php/lib/php.ini
保存,重新启动
service httpd start
如果没有报错则说明启动成功
测试php是否安装成功
在usr/local/apache2/htdocs写一个简单的php页面test.php
<?php
phpinfo();
?>
访问:localhost/test.php,出现php信息则说明安装成功