CentOs 7.2 安装PHP7.2 编译安装

安装扩展包并更新系统内核

[root@iz28snxdn5mz ~]# yum install epel-release -y
[root@iz28snxdn5mz ~]# yum update

YUM安装PHP依赖组件(包含Nginx依赖):

[root@iz28snxdn5mz ~]# yum -y install php-mcrypt libmcrypt-devel libxml2 libxml2-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libxslt libxslt-devel cyrus-sasl-plain cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib m4 autoconf gcc gcc-c++ openssl openssl-devel pcre pcre-devel zlib zlib-devel wget net-tools zip

下载php源码安装包:

wget http://cn2.php.net/get/php-7.2.12.tar.gz/from/this/mirror
mv mirror php-7.2.12.tar.gz

编译安装配置PHP

编译

[root@iz28snxdn5mz php-7.2.12]# ./configure --prefix=/opt/php/php-7.2.12 \
--with-config-file-path=/opt/php/php-7.2.12/etc \
--with-curl \
--with-gd \
--with-gettext \
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-libxml-dir \
--with-openssl \
--with-pcre-regex \
--with-pdo-sqlite \
--with-pear \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--enable-fpm \
--enable-bcmath \
--enable-libxml \
--enable-inline-optimization \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-xml \
--enable-zip \
--enable-static \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--disable-debug \
--disable-fileinfo \
--enable-maintainer-z

安装:

[root@iz28snxdn5mz php-7.2.12-src]# make clean && make -j 4 && make install

配置php.ini

[root@iz28snxdn5mz etc]# pwd
/opt/php/php7.2/etc
[root@iz28snxdn5mz etc]# find / -name php.ini-production
/opt/php/php7.2-src/php.ini-production
[root@iz28snxdn5mz etc]# cp /opt/php/php7.2-src/php.ini-production php.ini
[root@iz28snxdn5mz etc]# ls
pear.conf  php-fpm.conf  php-fpm.conf.default  php-fpm.d  php.ini
[root@iz28snxdn5mz etc]#

配置php-fpm:

[root@iz28snxdn5mz etc]# pwd
/opt/php/php7.2/etc
[root@iz28snxdn5mz etc]# cp php-fpm.conf.default php-fpm.conf
[root@iz28snxdn5mz etc]# ll
total 24
-rw-r--r-- 1 root root 1240 Apr  3 10:56 pear.conf
-rw-r--r-- 1 root root 4468 Apr  3 11:17 php-fpm.conf
-rw-r--r-- 1 root root 4468 Apr  3 10:55 php-fpm.conf.default
drwxr-xr-x 2 root root 4096 Apr  3 10:55 php-fpm.d
[root@iz28snxdn5mz etc]#
[root@iz28snxdn5mz php-fpm.d]# pwd
/opt/php/php7.2/etc/php-fpm.d
[root@iz28snxdn5mz php-fpm.d]# cp www.conf.default www.conf
[root@iz28snxdn5mz php-fpm.d]# ls
www.conf  www.conf.default
[root@iz28snxdn5mz php-fpm.d]#
[root@iz28snxdn5mz php-fpm.d]# pwd
/opt/php/php7.2/etc/php-fpm.d
[root@iz28snxdn5mz php-fpm.d]# find / -name php-fpm
/opt/php/php7.2-src/sapi/fpm/php-fpm
/opt/php/php7.2/sbin/php-fpm
/var/log/php-fpm
/run/php-fpm
[root@iz28snxdn5mz php-fpm.d]# cp /opt/php/php7.2-src/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@iz28snxdn5mz php-fpm.d]# chmod +x /etc/init.d/php-fpm     //添加权限

启动PHP

[root@iz28snxdn5mz init.d]# pwd
/etc/init.d
[root@iz28snxdn5mz init.d]# ./php-fpm start
Starting php-fpm  done
[root@iz28snxdn5mz init.d]# ps -ef | grep php-fpm 
root     10402     1  0 11:33 ?        00:00:00 php-fpm: master process (/opt/php/php7.2/etc/php-fpm.conf)
nobody   10403 10402  0 11:33 ?        00:00:00 php-fpm: pool www
nobody   10404 10402  0 11:33 ?        00:00:00 php-fpm: pool www
root     10406  8032  0 11:33 pts/1    00:00:00 grep --color=auto php-fpm

猜你喜欢

转载自blog.csdn.net/qq_35255775/article/details/83995480