所需源码包:
/usr/local/src/PHP-5.2.17/libmcrypt-2.5.8.tar.gz
/usr/local/src/PHP-5.2.17/mhash-0.9.9.9.tar.gz
/usr/local/src/PHP-5.2.17/mcrypt-2.6.8.tar.gz
/usr/local/src/PHP-5.2.17/libiconv-1.14.tar.gz
/usr/local/src/PHP-5.2.17/php-5.2.17.tar.gz
在编译PHP之前,先要解决两个问题:CentOS6.x 上 libmcrypt 的安装和可能有些系统找不到 libiconv 导致的错误。
1、安装PHP依赖库
# 安装 libmcrypt
cd /usr/local/src/PHP-5.2.17
tar -xzvf ./libmcrypt-2.5.8.tar.gz
cd ./libmcrypt-2.5.8
./configure --prefix=/usr
make && make install
#安装 mhash
cd /usr/local/src/PHP-5.2.17
tar -xzvf ./mhash-0.9.9.9.tar.gz
cd ./mhash-0.9.9.9
./configure --prefix=/usr
make && make install
#安装 mcrypt
/sbin/ldconfig #搜索出可共享的动态链接库
cd /usr/local/src/PHP-5.2.17
tar -xzvf ./mcrypt-2.6.8.tar.gz
cd ./mcrypt-2.6.8
./configure
make && make install
#安装 libiconv
cd /usr/local/src/PHP-5.2.17
tar -xzvf ./libiconv-1.14.tar.gz
cd ./libiconv-1.14
./configure --prefix=/usr/local/libiconv
make && make install
2、安装 PHP 5.2.17
cd /usr/local/src/PHP-5.2.17/php-5.2.17
#生成配置
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-openssl --with-zlib --with-bz2 --with-gettext --with-mhash --with-mcrypt --with-iconv=/usr/local/libiconv --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --enable-gd-native-ttf --enable-bcmath --enable-mbstring --enable-zip --enable-soap --enable-sockets --enable-ftp --without-pear
#编译
make && make install
编译参数解释:
--prefix=/usr/local/php : 设置安装路径
--with-apxs2=/usr/local/apache/bin/apxs : 编译共享的 Apache 2.0 模块
--with-config-file-path=/etc : 指定配置文件php.ini地址
--with-config-file-scan-dir=/etc/php.d : 指定额外的ini文件目录
--with-openssl : 编译OpenSSL支持
--with-zlib : 编译zlib支持
--enable-bcmath : 启用BC风格精度数学函数
--with-bz2 : BZip2支持
--with-gd : GD支持
--enable-gd-native-ttf : 启用TrueType字符串函数
--with-gettext : 启用GNU gettext支持
--with-mhash : mhash支持
--enable-mbstring : 启用支持多字节字符串
--with-mcrypt : 编译mcrypt加密支持
--enable-zip : 启用zip 读/写支持
--with-iconv=/usr/local/libiconv : iconv支持
--with-curl : CRUL支持
--enable-soap : SOAP支持
--enable-sockets : SOCKETS支持
--enable-ftp : FTP支持
--with-mysql=/usr/local/mysql : 启用mysql支持
--with-pdo-mysql=/usr/local/mysql : 启用pdo-mysql支持
--without-pear : 不安装PEAR
更多编译参数解释参考http://www.php.net/manual/zh/configure.about.php 或者 ./configure --help 查看。
#复制配置文件php.ini
cp /usr/local/src/PHP-5.2.17/php-5.2.17/php.ini-dist /usr/local/php/etc/php.ini
#在/etc/httpd/conf/httpd.conf文件中加入PHP文件类型解析(加在文件最后即可)
Addtype application/x-httpd-php .php
3、重启Apache
service httpd restart # 或 /etc/init.d/httpd restart
运行 phpinfo() 函数,看下配置信息
延伸阅读:
CentOS6.3编译安装LAMP(2):编译安装 Apache2.2.25
CentOS6.3编译安装LAMP(2):编译安装 Apache2.4.6
CentOS6.3编译安装LAMP(3):编译安装 MySQL5.5.25
CentOS6.3编译安装LAMP(4):编译安装 PHP5.2.17
CentOS6.3编译安装LAMP(4):编译安装 PHP5.3.27
PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展?
CentOS6.3 编译安装LAMP(4):编译安装 PHP5.2.17的更多相关文章
-
CentOS 6编译安装lamp,并分别安装event模块方式和FPM方式的PHP
任务目标: 编译安装LAMP 要求(1) 安装一个模块化的PHP 要求(2) 安装一个FPM的PHP 注意PHP需要最后一个安装,因为需要前两者的支持. 所以这里的安装次序为 1.httpd 2.Ma ...
-
CentOS 6.3下源码编译安装LAMP
一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代 ...
-
Centos6.5添加Epel和Remi源安装Lamp环境
想搭建一个Lamp环境,因为编译安装太麻烦,对于我这样的新手来说,太过于复杂.而CentOS自带的Apache.MySql和PHP的版本都太低,不想用.上百度搜了一轮,原来可以通过添加Epel和Rem ...
-
CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境
一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代 ...
-
CentOS 6.3 源码安装LAMP(Linux+Apache+Mysql+Php)环境
一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而>言都是在它所 ...
-
CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境【转载】
本文转载自 园友David_Tang的博客,如有侵权请联系本人及时删除,原文地址: http://www.cnblogs.com/mchina/archive/2012/11/28/2778779.h ...
-
CentOS 下源码安装LAMP环境
一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代 ...
-
CentOS 6.5下源码安装LAMP(Linux+Apache+Mysql+Php)环境
---恢复内容开始--- 一.系统环境 系统平台:CentOS 6.5 (Final) Apache版本:httpd-2.2.31.tar.gz(最新版本2015-07-16) Mysql 版本:my ...
-
Ubuntu下快速安装LAMP server
Ubuntu下可快速安装LAMP server(Apache+MySQL+PHP5). 首先,打开Ubuntu虚拟机,Terminal打开root权限:“sudo -s”. 一.安装LAMP serv ...
-
Ubantu 安装 LAMP环境
1.通过 apt-get update 命令从ubantu软件源中下载可安装软件的列表. 2.通过一条命令可以一次性的安装LAMP apt-get install apache2 php5 mysql ...
随机推荐
-
H5一二事
先回顾一下WEB技术的几个阶段 Web 1.0 内容为主,主要流行HTML和CSS Web 2.0 动态网页,流行AJAX/JavaScript/DOM H5 时代,WEB开发回归富客户端 那么H5肯 ...
-
基于EventAggregator的事件发布及订阅
EventAggregator简介 EventAggregator是Prism中专门处理ViewModel与ViewModel之间事件传递的类对象,它提供了针对事件的发布方法和订阅方法,所以可以非常方 ...
-
Win8下,以管理员身份启动VS项目
之前一直是先以管理员身份启动VS,然后再打开项目的,比较麻烦,找了好久,总算有一个处理方案了 在Windows7下 通常使用修改属性的方式:在任意快捷方式上右击,选择属性,选择高级,选择以管理员身份启 ...
-
Linux 安装qt5-designer并集成到Pycharm
在前面,有过介绍 Pycharm集成pyrcc4 =====>链接: Pyqt 打包资源文件 这个是在Windows下集成,且pyqt在Windows下一个双击exe搞定. 在pyqt5之前 ...
-
IO流(5)—缓冲流
1.IO体系: 抽象基类--节点流(文件流)--缓冲流(处理流的一种) InputStream --FileInputStream--BufferedInputStream OutputStream- ...
-
Python中包(package)的调用方式
一.什么是Python Package 如何区分你看到的目录是一个Python Package包呢?其实很简单,你只要看这个名录下是否有“__init__.py”这个文件就好了,如果有那么就是Pyt ...
-
Node的关系型数据库ORM库:bookshelf
NodeJs 关系数据库ORM库:Bookshelf.js bookshelf.js是基于knex的一个关系型数据库的ORM库.简单易用,内置了Promise的支持.这里主要罗列一些使用的例子,例子就 ...
-
HDUOJ----最少拦截系统
最少拦截系统 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submis ...
-
[随感]GIS开发的困惑
从事GIS应用开发也有3年了,但是做了些东西自己始终不满意,不是不稳定就是效率低,不是功能杂就是不实用! 首先是AE开发,我必须说自己很欣赏ArcGIS的软件设计架构和思想.但是在开发的过程中也确实遇 ...
-
linux下实时查看log
1.先切换到:cd usr/local/tomcat5/logs2.tail -f catalina.out3.这样运行时就可以实时查看运行日志了 Ctrl+c 是退出tail命令. 顺便讲一下lin ...