首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
Web开发
> 详细
安装PHP5
时间:
2018-05-27 00:20:07
阅读:
287
评论:
0
收藏:
0
[点我收藏+]
标签:
php5
#cd /usr/local/src/
#wget
http://cn2.php.net/distributions/php-5.6.32.tar.gz
//下载包
#tar zxvf php-5.6.32.tar.gz //解压
#cd php-5.6.32/
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --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
//命令解释:
--prefix指定安装目录;
--with-apxs2是Apache的一个工具,它可以自动把模块放到Apache的mods目录里,且在它的配置文件里增加一行load module,自动安装扩展模块;
--with-config-file-path指定配置文件所在路径;
--with-mysql指定mysql路径;
--with-pdo-mysql指定pdo-mysql路径;
--with-mysqli和上面两个是指定mysql的库或驱动,要让PHP和mysql进行通信,首先需要编译出一个支持它的模块,老版本使用--with-mysql,新版本使用--with-mysqli,新版本直接把老版本的--with-mysql废弃,不再使用;
后面的一些都是指定PHP的一些模块,如果没有特殊要求,直接复制这段参数就可以,基本都是通用的,要搞清楚一个指定Apache的,一个指定mysql的。
安装过程中,可能会报一些错误,大多数是因为缺少某些库
安装出现如下报错:error:xml2-config not found. Please check you libxml2 installation.
解决方法:# yum install -y libxml2-devel //安装libxml2-devel
如不确定它缺少哪个库,可以使用命令# yum list |grep xml2列出来,一般使用的库名称都是:库名称-devel
安装完成之后,再次执行./configure + 一长串参数的命令
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --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
再次报错:error:Cannot find OpenSSL‘s <evp.h>
解决方法: # yum install -y openssl-devel
再次执行./configure + 一长串参数的命令,它这个报错是遇到一个错误就停止
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --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
再次报错: error: Please reinstall the BZip2 distribution
解决方法:# yum install -y bzip2-devel
继续执行./configure + 一长串参数的命令
再一次的报错:error:jpeglib.h not found.
解决方法:# yum install -y libjpeg-devel,我自己是yum安装的libjpeg-devel包,但是它安装的是libjpeg-turbo-devel-1.2.90-5.el7包,这是它自动匹配的
再执行./configure + 一长串参数的命令
再次报错:error:png.h not found.
解决方法:# yum install -y libpng-devel
再执行./configure + 一长串参数的命令
再次报错: error: freetype-config not found.
解决方法:# yum install -y freetype-devel
再执行./configure + 一长串参数的命令
再次报错:error: mcrypt.h not found. Please reinstall libmcrypt.
解决方法:首先安装epel扩展源,因为libmcrypt在epel扩展源里面,所以先安装epel扩展源
#yum install -y epel-release
#yum install -y libmcrypt-devel
再执行./configure + 一长串参数的命令
出现如图所示,则说明./configure + 一长串参数的命令执行成功
echo $? //也可以执行echo $?来查看是否执行成功
make //安装
#echo $? //检查make执行是否有错误
#make install
#ls /usr/local/php/ //查看php目录下的几个文件
bin etc include lib php
#ls /usr/local/php/bin/php //PHP的核心配置文件路径
/usr/local/apache2.4/modules/libphp5.so //这个路径就是我们想要的PHP扩展模块,PHP和Apache结合是通过libphp5.so 的这个.so文件实现的
#/usr/local/php/bin/php -m //查看PHP所加载的模块有哪些
#/usr/local/apache2.4/bin/httpd -M //查看Apache的模块
可以看到最后一行 php5_module (shared),说明php是作为httpd一个扩展模块的形式存在的,如果删除.so文件,那么Apache肯定不支持PHP了
#ls -l /usr/local/apache2.4/modules/libphp5.so //php的.so模块文件路径
#vi /usr/local/apache2.4/conf/httpd.conf //httpd的配置文件,可以看到下图它指定的模块路径
#:q!
#/usr/local/php/bin/php -i |less //-i可以查看到PHP的一些信息,包括一些参数
#cp php.ini-production /usr/local/php/etc/php.ini //production是正式生产环境上使用的
#cp php.ini-development /usr/local/php/etc/php.ini //development 是测试环境、开发环境使用的
#/usr/local/php/bin/php -i |less
安装PHP5
标签:
php5
原文地址:http://blog.51cto.com/13669226/2120686
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
36.VUE — 认识 Webpack 和 安装
2021-07-28
【PHP】上传图片翻转问题
2021-07-28
php对数字进行万。亿的转化
2021-07-28
五个 .NET 性能小贴士
2021-07-28
Three.js中显示坐标轴、平面、球体、四方体
2021-07-28
.net 5+ 知新:【1】 .Net 5 基本概念和开发环境搭建
2021-07-27
1.html,css
2021-07-27
基于Docker搭建 Php-fpm + Nginx 环境
2021-07-27
nginx + http + svn
2021-07-27
kubernets kube-proxy的代理 iptables和ipvs
2021-07-26
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!