1. 闲不住的人首页
  2. 网站服务

CentOS7.6编译安装PHP7.3

本篇演示生产环境中如何编译安装 PHP7.3,并启用 php-fpm 构建 LNMP 环境。

1. 安装依赖包

$ yum -y install gcc gcc-c++ openssl openssl-devel libxml2 libxml2-devel curl-devel libjpeg-devel bzip2-devel.x86_64 libXpm-devel gmp-devel icu libicu libicu-devel php-mcrypt  libmcrypt  libmcrypt-devel postgresql-devel libxslt-devel libpng-devel libpng freetype-devel

安装 libzip

$ wget https://nih.at/libzip/libzip-1.2.0.tar.gz
$ tar xf libzip-1.2.0.tar.gz
$ cd libzip-1.2.0
$ ./configure
$ make && make install
# 添加搜索路径到配置文件
$ echo '/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64' >> /etc/ld.so.conf
# 然后 更新配置
$ ldconfig -v

2. 获取 PHP 源码包

前往 PHP 官网获取最新版本的安装包:https://www.php.net/downloads.php

$ cd /usr/local/src/
$ wget http://59.80.44.50/cn2.php.net/distributions/php-7.3.3.tar.gz
$ tar xf php-7.3.3.tar.gz
$ cd php-7.3.3

3. 预编译

./configure --prefix=/usr/local/php \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl \
--with-mcrypt \
--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 \
--enable-gd-native-ttf \
--with-openssl \
--with-fpm-user=www-data \
--with-fpm-group=www-data \
--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

4. 编译安装

$ make -j `grep processor /proc/cpuinfo | wc -l` && make install

出现如下错误:

In file included from /usr/local/src/php-7.3.3/ext/zip/php_zip.h:31:0,
                 from /usr/local/src/php-7.3.3/ext/zip/php_zip.c:36:
/usr/local/include/zip.h:59:21: 致命错误:zipconf.h:没有那个文件或目录
 #include <zipconf.h>
                     ^
编译中断。
make: *** [ext/zip/php_zip.lo] 错误 1
make: *** 正在等待未完成的任务....

解决方法:

$ cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h

5. 准备PHP配置文件

$ cp php.ini-development /usr/local/php/lib/php.ini
$ cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
$ cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
$ cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
$ chmod +x /etc/init.d/php-fpm
$ groupadd www-data
$ useradd -g www-data www-data

6. 启动 php-fpm

$ /etc/init.d/php-fpm start
$ ps aux|grep php-fpm
$ ss -tnl | grep 9000

7. 配置环境变量

$ echo 'PATH=/usr/local/php/bin:$PATH' >> /etc/profile.d/php.sh
$ source /etc/profile.d/php.sh

至此 PHP 就安装好了,如果觉得有帮助就点个赞吧。

原创文章,作者:恩志,如若转载,请注明出处:https://www.xbzdr.com/196.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

在线咨询:点击这里给我发消息

邮件:510749025@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code