下载php
[root@localhost ~]# cd /usr/local/src
[root@localhost src]# ls
httpd-2.2.31 mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz
httpd-2.2.31.tar.bz2
[root@localhost src]# wget http://cn2.php.net/distributions/php-5.6.24.tar.gz
[root@localhost src]# ls
httpd-2.2.31 mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz
httpd-2.2.31.tar.bz2 php-5.6.24.tar.gz
解压
[root@localhost src]# tar zxf php-5.6.24.tar.gz
[root@localhost src]# ls
httpd-2.2.31 php-5.6.24
httpd-2.2.31.tar.bz2 php-5.6.24.tar.gz
mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz
配置编译参数
[root@localhost src]# cd php-5.6.24
[root@localhost php-5.6.24]# ./configure
> --prefix=/usr/local/php
> --with-apxs2=/usr/local/apache2/bin/apxs
> --with-config-file-path=/usr/local/php/etc
> --with-mysql=/usr/local/mysql
> --with-libxml-dir
> --with-gd
> --with-jpeg-dir
> --with-png-dir
> --with-freetype-dir
> --with-iconv-dir
> --with-zlib-dir
> --with-bz2
> --with-openssl
> --with-mcrypt
> --enable-soap
> --enable-gd-native-ttf
> --enable-mbstring
> --enable-sockets
> --enable-exif
> --disable-ipv6
错误1
configure: error: xml2-config not found. Please check your libxml2 installation.
解决方案
yum install -y libxml2-devel
错误2
configure: error: Cannot find OpenSSL's <evp.h>
解决方案
yum install -y openssl openssl-devel
错误3
checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution
解决方案
yum install -y bzip2 bzip2-devel
错误4
configure: error: png.h not found.
解决方案
yum install -y libpng libpng-devel
错误5
configure: error: freetype.h not found.
解决方案
yum install -y freetype freetype-devel
错误6
configure: error: jpeglib.h not found.
解决方案
[root@localhost php-5.6.24]# yum install -y libjpeg-devel
错误7
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决方案
cd /usr/local/src
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure --prefix=/usr/local
make
make install
重新配置编译参数
[root@localhost src]# cd /usr/local/src/php-5.6.24/
[root@localhost php-5.6.24]# ./configure
> --prefix=/usr/local/php
> --with-apxs2=/usr/local/apache2/bin/apxs
> --with-config-file-path=/usr/local/php/etc
> --with-mysql=/usr/local/mysql
> --with-libxml-dir
> --with-gd
> --with-jpeg-dir
> --with-png-dir
> --with-freetype-dir
> --with-iconv-dir
> --with-zlib-dir
> --with-bz2
> --with-openssl
> --with-mcrypt
> --enable-soap
> --enable-gd-native-ttf
> --enable-mbstring
> --enable-sockets
> --enable-exif
> --disable-ipv6
编译
[root@localhost php-5.6.24]# make
[root@localhost php-5.6.24]# echo $?
0
安装
[root@localhost php-5.6.24]# make install
[root@localhost php-5.6.24]# echo $?
0
查看
[root@localhost php-5.6.24]# ls /usr/local/php/
bin etc include lib php
模块
[root@localhost php-5.6.24]# /usr/local/php/bin/php –m
配置信息
[root@localhost php-5.6.24]# /usr/local/php/bin/php –i
如果Apache在运行,重启Apache
[root@localhost ~]# /usr/local/apache2/bin/apachectl restart
如果没有运行Apache,启动Apache
[root@localhost ~]# /usr/local/apache2/bin/apachectl start
修改Apache配置文件
[root@localhost htdocs]# vim /usr/local/apache2/conf/httpd.conf
找到
AddType application/x-gzip .gz .tgz
在该行下面添加
AddType application/x-httpd-php .php
找到
DirectoryIndex index.html
将该行改为
DirectoryIndex index.html index.htm index.php
找到
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
改为
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
[root@localhost htdocs]# /usr/local/apache2/bin/apachectl -t
Syntax OK
[root@localhost htdocs]# /usr/local/apache2/bin/apachectl graceful
拷贝php配置文件
[root@localhost htdocs]# cp /usr/local/src/php-5.6.24/php.ini-production /usr/local/php/etc/php.ini
[root@localhost htdocs]# /usr/local/apache2/bin/apachectl graceful