CentOS6编译安装php5.3

时间:2022-03-04 22:59:44

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