一、CentOS6编译安装php5.3

1、安装扩展

yum install -y openssl-devel traceroute libtool unzip gcc gcc-c++ autoconf net-snmp-devel vim wget sysstat lrzsz  man tree mysql-devel ntpdate rsync libxml2 libcurl libcurl-devel libxml2-devel zlib zlib-devel libjpeg* pcre-devel gd gd-devel bind-utils

2、下载PHP-FPM5.6

http://museum.php.net/php5/ 这个地址内包含了几乎所有的PHP版本,我们从中选择 https://museum.php.net/php5/php-5.6.2.tar.gz

cd /usr/local/src

wget https://museum.php.net/php5/php-5.6.2.tar.gz

tar zxvf  php-5.6.2.tar.gz

3、安装各种库

cd /usr/local/src

wget  http://mirror.hust.edu.cn/gnu/libiconv/libiconv-1.10.tar.gz

tar zxvf libiconv-1.10.tar.gz

cd libiconv-1.10

./configure --prefix=/usr/local/libiconv

make

make install

yum install -y libjpeg-devel

yum install -y libpng-devel

yum install -y epel-release

yum install -y libmcrypt-devel
因为CentOs6默认的yum源没有 libmcrypt-devel这个包,只能借助epel的yum源,所以先安装epel,再安装libmcrypt。

4、编译安装PHP

这里要注意/usr/local/php5.6.2 是PHP的安装路径 ,可以根据需要修改

'./configure'  '--prefix=/usr/local/php5.6.2' '--with-config-file-path=/usr/local/php5.6.2/etc' '--with-iconv=/usr/local/libiconv' '--enable-fpm' '--with-libxml-dir' '--with-zlib' '--with-curl' '--enable-dba' '--enable-ftp' '--with-freetype-dir' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--with-zlib-dir' '--enable-gd-native-ttf' '--with-gettext' '--enable-mbstring' '--with-mcrypt' '--with-mysql' '--with-mysqli' '--enable-pcntl' '--with-pdo-mysql' '--without-pdo-sqlite' '--enable-shmop' '--enable-sockets' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--enable-zip'

有找不到库,就安装对应库

make

make install

5、配置php

将源码包里的php.ini-production复制到安装目录下,并更名php.ini

cd /usr/local/src/php-5.6.2

cp php.ini-production /usr/local/php5.6.2/etc/php.ini

将安装目录下的php-fpm.conf.default复制并更名php-fpm.conf

cd /usr/local/php5.6.2/etc/

cp php-fpm.conf.default php-fpm.conf

6、启动php

cd /usr/local/php5.6.2/sbin

./php-fpm

7、查看

netstat -tunlp|grep 9000

8、关闭

killall php-fpm

9、设置为服务

cd /etc/init.d

将源码包里的init.d.php-fpm复制并更名pph-fpm

cp /usr/local/src/php-5.6.2/sapi/fpm/init.d.php-fpm php-fpm

设置权限

chmod a+x php-fpm

cd /usr/local/php5.6.2/etc

打开使用pid文件配置参数

vi php-fpm.conf

找到pid = run/php-fpm.pid,去掉前面注释

ps -ef|grep php-fpm

找到master  process对应的进程号,关闭php

kill -USR2 进程号

重启php,会自动生成php-fpm.pid文件.

service php-fpm start

关闭php,成功

service php-fpm stop

将服务添加到chkconfig列表,设置开机启动

chkconfig --add php-fpm

chkconfig php-fpm on

10、安装PHP的扩展bcmath

cd /usr/local/src/php-5.6.2/ext/bcmath

执行

/usr/local/php5.6.2/bin/phpize

执行这个命令后会在当前目录下生产一些configure文件

编译

./configure --with-php-config=/usr/local/php5.6.2/bin/php-config

make

make install

CentOS6编译安装php5.3的更多相关文章

  1. CentOS6.3 编译安装LAMP(4):编译安装 PHP5.2.17

    所需源码包: /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. ...

  2. CentOS6.3 编译安装LAMP(4):编译安装 PHP5.3.27

    所需源码包: /usr/local/src/PHP-5.3.27/libmcrypt-2.5.8.tar.gz /usr/local/src/PHP-5.3.27/mhash-0.9.9.9.tar. ...

  3. 记 Mac Pro 系统升级后,编译安装 PHP-5.6.28 / PHP-7.0 报错修复过程

    买 Mac Pro 的时候,系统为 OS X 10.11.5,编译 PHP-5.6.21 的时候,也遇到一些坑,安装过程记录如下: Mac Pro 编译安装 PHP 5.6.21 及 问题汇总 后来, ...

  4. 在centos6编译安装http-2.4

    在centos6 编译安装httpd-2.4 安装httpd-2.4 Ü 依赖于apr-1.4+, apr-util-1.4+, [apr-iconv] Ü apr: : apache portabl ...

  5. php编译安装php-5.6

    #php编译安装php-5.6 ,Nginx+php使用 #!/bin/sh #php编译安装php-5.6 ,Nginx+php使用 #定义函数,默认绿色输出 '#' 开头为红色 function ...

  6. centos 7 min 编译安装php5.6+nginx1.7.5 笔记

    1.安装mysql请参照 centos 7 min 编译安装mysql5.6.20 笔记 2.编译安装php5.6+nginx1.7.5 2.1.安装php5.6.0 首先添加依赖应用yum inst ...

  7. 编译安装php-5.4.44

    编译安装php-5.4.44 1. 首先,安装必要的库文件,一面编译被打断: yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-de ...

  8. Mac OSX编译安装php5.6

    安装好OSX 10.13以后默认自带的php7.1.7,跟现有环境不兼容,所以准备编译安装php5.6,自带的php7不建议卸载,重新安装一份php5.6 1.安装php的一些依赖,推荐使用brew安 ...

  9. 【PHP升级】CentOS6.3编译安装 PHP5.4.38

    先前安装的PHP5.3.28(参考:CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28),现在准备升级PHP到5.4.38,有如下几个地方需要重新编译 ...

随机推荐

  1. 《机器学习实战》Logistic回归

    注释:Ng的视频有完整的推到步骤,不过理论和实践还是有很大差别的,代码实现还得完成 1.Logistic回归理论 http://www.cnblogs.com/wjy-lulu/p/7759515.h ...

  2. JAVA面试精选【Java基础第二部分】

    上一篇,我们给出了大概35个题目,都是基础知识,有童鞋反映题目过时了,其实不然,这些是基础中的基础,但是也是必不可少的,面试题目中还是有一些基础题目的,我们本着先易后难的原则,逐渐给出不同级别的题目, ...

  3. getpass模块 ---- optparse

    getpass模块,不回显 常用方法 import getpass password=getpass.getpass('input your password: ').strip() 其他用法 use ...

  4. Java Swing类 颜色、按键状态判断例子代码

    package rom; import java.awt.BorderLayout; import java.awt.Color; import java.awt.event.ActionEvent; ...

  5. oracle数据库tns配置方法详解

    TNS简要介绍与应用 Oracle中TNS的完整定义:transparence Network Substrate透明网络底层,监听服务是它重要的一部分,不是全部,不要把TNS当作只是监听器. TNS ...

  6. HTTP Status 400 - description The request sent by the client was syntactically incorrect.

    HTTP Status 400 - type Status report message description The request sent by the client was syntacti ...

  7. Hive高级聚合GROUPING SETS,ROLLUP以及CUBE

    scala> import org.apache.spark.sql.hive.HiveContextimport org.apache.spark.sql.hive.HiveContext s ...

  8. rem布局js实现

    (function(designWidth, maxWidth) { var doc = document, win = window; var docEl = doc.documentElement ...

  9. Centos代理上网设置

    原文链接:http://m.blog.csdn.net/article/details?id=51851677 一.centos自带界面设置代理 1. 界面设置  squid默认代理端口3128. 2 ...

  10. CSS多行文字垂直居中的两种方法

    之前写过一篇关于:CSS左右居中对齐的文章,里面提到的两种方法其实也可以引申为垂直居中对齐.写这篇文章是因为要兼容IE6.IE7的问题,我们都知道一行文字时可以通过line-height来设置垂直居中 ...