Linux下 PHP7.2.x 编译升级至 PHP 7.3.x

1. 升级安装 libzip 依赖至 1.3.2

  • 之前通过 yum 安装的 libzip 的版本太低,需要升级一下 libzip 版本(否则安装 PHP 的时候会报错)
  • 下载 libzip 1.3.2 足矣(官网最新 libzip 1.5.2,但是需要升级 cmake 到 3.0.2 以上版本,太折腾了)
cd /usr/local/src
wget https://libzip.org/download/libzip-1.3.2.tar.gz
  • 解压到 src
tar zxvf libzip-1.3.2.tar.gz
  • 编译三部曲
cd libzip-1.3.2
./configure
make
make install

2. 升级安装 PHP 至 7.3.7

  • 备份 PHP 7.2.18
mv /usr/local/php /usr/local/php7.2.18 
  • 下载最新的 PHP7.3.7 安装包:
cd /usr/local/src
wget https://www.php.net/distributions/php-7.3.7.tar.gz
  • 解压到 src
tar zxvf php-7.3.7.tar.gz
  • 创建守护进程用户
useradd -M -s /sbin/nologin www
  • 编译安装
cd /usr/local/src/php-7.3.7/
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc \
--with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql \
--with-mysql-sock=/tmp/mysql.sock --enable-sockets --enable-zip \
--with-fpm-user=www --with-fpm-group=www --enable-fpm --enable-gd-native-ttf \
--with-jpeg-dir --with-freetype-dir --with-gd --with-curl --with-curl --with-mcrypt --with-openssl \
--with-xmlrpc --enable-bcmath --enable-shmop --enable-sysvsem --enable-soap \
--enable-inline-optimization --enable-mbregex --enable-mbstring --enable-pcntl \
--enable-gd-jis-conv --enable-ftp --with-zlib --with-mhash
make
make install

  • 复制默认配置文件(从 /usr/local/php7.2.18 目录拷贝就行)
cp /usr/local/php7.2.18/etc/php.ini  /usr/local/php/etc/php.ini
cp /usr/local/php7.2.18/etc/php-fpm.conf  /usr/local/php/etc/php-fpm.conf
cp /usr/local/php7.2.18/etc/php-fpm.d/www.conf  /usr/local/php/etc/php-fpm.d/www.conf

3. 重装 & 升级扩展

3.1 重装 Phalcon 扩展

  • 点击阅读

3.2 重装 Memcached 扩展

  • 删除上一次安装时留下的解压包,重新解压
cd /usr/local/src
rm -rf memcached-3.1.3
  • 接下去的步骤:点击阅读

3.3 升级 Redis 扩展至 5.0.0

  • 下载 Redis 5.0.0
cd /usr/local/src
wget https://github.com/phpredis/phpredis/archive/5.0.0.tar.gz
  • 解压缩
mv 5.0.0.tar.gz phpredis-5.0.0.tar.gz
tar zxvf phpredis-5.0.0.tar.gz
  • 编译三部曲
# 进入源码目录
cd phpredis-5.0.0

# 通过phpize建立php的外挂模块,生成 configure
/usr/local/php/bin/phpize

# 配置指定安装目录 
./configure --with-php-config=/usr/local/php/bin/php-config

# 配置安装 && 编译安装
make && make install

  • 最后重启 Nginx 和 PHP,搞定
kill -9 $(pidof php-fpm)
/usr/local/php/sbin/php-fpm
/usr/local/nginx/sbin/nginx -s reload

你可能感兴趣的:(Linux,PHP,服务器配置)