• CentOS6编译安装php5.3


    一、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

  • 相关阅读:
    上传按钮样式优化 <input type="file" />
    javascript多重继承
    javascript prototype和__proto__
    Android开发之通过Intent启动其他App的Service
    Android开发之bindService()侦听service内部状态
    Android 开发之 bindService() 通信
    Android开发之异步消息处理机制AsyncTask
    Android开发之异步消息处理机制Handler
    Android开发UI之在子线程中更新UI
    Android开发之在子线程中使用Toast
  • 原文地址:https://www.cnblogs.com/sky-cheng/p/10564734.html
Copyright © 2020-2023  润新知