CentOS7源码编译安装php5.6完整版

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

预备: 1、php5.6.41源码包(请自行到官网获取,传送门【PHP官网源码包列表界面】)

2、下载位置:/usr/local/src

3、安装位置:/usr/local/php/php5.6.37

一、装依赖

yum install -y libxml2-dev libpng12-dev libfreetype6-dev openssl libcurl3-openssl-dev libjpeg-dev
yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel

二、创建PHP对应用户及用户组

 groupadd www56
 useradd -g www56 www56

三、./configure 1)解压源码包:

tar -zxvf php-5.6.37.tar.gz
cd php-5.6.37

2)确认:

  1. 安装目录:/usr/local/php/php5.6.37
  2. 指定配置文件位置:--with-config-file-path=/usr/local/php/php5.6.37/etc

3)初始化(如要详细自己配置,可用./configure --help自行查看):

./configure --prefix='/usr/local/php/php5.6.37' --with-config-file-path=/usr/local/php/php5.6.37/etc  --with-pdo-pgsql  --with-zlib-dir --with-freetype-dir --enable-mbstring --with-libxml-dir=/usr --enable-soap --enable-calendar --with-curl --with-gd --with-pgsql --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-exif --enable-bcmath --with-mhash --enable-zip --with-pcre-regex --with-pdo-mysql --with-mysqli --with-jpeg-dir=/usr --with-png-dir=/usr --with-openssl --with-fpm-user=www56 --with-fpm-group=www56 --with-libdir=/lib/x86_64-linux-gnu/ --enable-ftp --with-gettext --with-xmlrpc --with-xsl --enable-opcache --enable-fpm --with-iconv --with-xpm-dir=/usr --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql-sock=/data/mysqldata/3306/mysql.sock  --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pear

四、编译安装

1、make(先make,缺啥依赖它会输出给你提示,缺啥就装啥)

make

2、make test(根据make打印的提示,我们坐下编译测试,继续排错,尽量细心一点、耐心一点)

make test

3、make install(一次次排错,重试,最后再install)

make install

4、根据make install的可能的提示信息做进一步完善操作: 1)You may want to add: /usr/local/php/php5.6.37/lib/php to your php.ini include_path 打开php.ini配置文件,用PHP的include_path语法include进去

find / -name php.ini
#将上述所说的路径Inlclude进去
vim php.ini
include_path=".:/usr/local/php/php5.6.37/lib/php"

2)/root/src/php-5.6.37/build/shtool install -c ext/phar/phar.phar /usr/local/php/php5.6.37/bin

#照做
/root/src/php-5.6.37/build/shtool install -c ext/phar/phar.phar /usr/local/php/php5.6.37/bin

3)ln -s -f phar.phar /usr/local/php/php5.6.37/bin/phar

#照做
ln -s -f phar.phar /usr/local/php/php5.6.37/bin/phar

5、安装完成

五、记录信息

1、php

(1)命令位置:/usr/local/php56/bin/php

(2)配置文件位置:/usr/local/php56/lib/php.ini

2、php-fpm

(1)命令位置:/usr/local/php56/sbin/php-fpm

(2)配置文件位置:/usr/local/php56/etc/php-fpm.conf

(3)相关命令(启动、关闭、重启) /usr/local/php56/sbin/php-fpm start/restart/stop

3、建议将php和php-fpm软链到/usr/bin

ln -s /usr/local/php/php5.6.37/bin/php /usr/bin/php
#sbin下的命令只有root用户才能使用
ln -s /usr/local/php/php5.6.37/sbin/php-fpm /usr/sbin/php-fpm

4、如果要多版本PHP共存,可以在软链时起个自己好记的别名,比如php56、php70,建议至少保留一个版本的默认名字叫php

5、配置自定义PHP-fpm: 为了配置php-fpm可以自由启动,将init.d.php-fpm放在启动里面

cp /usr/local/src/php-5.6.37/sapi/fpm/init.d.php-fpm /etc/init.d/php56-fpm
chmod +x /etc/init.d/php56-fpm
#php-fpm进程管理器的开关重启
/etc/init.d/php56-fpm start|stop|restart

6、那么最后,怎么下载我这个对应PHP版本的对应的扩展呢?

#使用与php的bin目录同级的pecl,如安装mongodb
/usr/local/php/php5.6.37/bin/pecl install mongodb

转载于:https://my.oschina.net/cxgphper/blog/2050493

你可能感兴趣的:(CentOS7源码编译安装php5.6完整版)