主要步骤
1、安装PHP7.3
2、启动PHP7.3
3、将nginx 切到PHP7.3上
4、重启nginx
安装PHP7.3
首先到https://www.php.net/downloads.php里找到需要安装的PHP版本,下载
新建目录 mkdir /usr/local/php7.3,可自己选择目录
解压 tar -zvxf *****
进入目录
为了避免编译安装出来的PHP和旧版扩展有差,先安照原来的phpinfo()编译,如果有自行添加的扩展,如mongod、redis等就自行添加
可以通过 (原PHP安装路径)/bin/php -m 查看安装了那些扩展,之后和新安装的对比

./configure \
--prefix=/usr/local/php7.3 \
--with-config-file-path=/usr/local/php7.3/etc \
--with-fpm-user=www \
--with-fpm-group=www \
注意这几个配置,前两个是目录,一个是fpm用户和用户组,看自己情况修改
./configure编译后,make && make install 完事
期间可能遇到的问题
system libzip must be upgraded to version >= 0.11 参考地址
make: *** [sapi/cli/php] Error 1 参考地址 我用来方法二
Warning! a PEAR user config file already exists from a previous PEAR installation at '/root/.pearrc'. You may probably want to remove it. 这个原来PHP已经安装了,所以会warning,忽略。
附:完整编译安装流程
启动PHP7.3
配置文件
首先是php.ini。
如果都是php7 的话,可以直接cp 原php7的php.ini 到 php7.3 etc目录
如果是大版本更新就将php7.3解压目录下的 php.ini.devlop 复制到到自己的安装目录etc下
其次是php-fpm的配置
cp /usr/loacal/php7.3/etc/php-fpm.conf.default /usr/loacal/php7.3/etc/php-fpm.conf
cp /usr/local/php7.3/etc/php-fpm.d/www.conf.default /usr/local/php7.3/etc/php-fpm.d/www.conf
因为php-fpm默认9000端口,被原PHP占住了,所以要修改PHP7.3的端口
vi /usr/local/php7.3/etc/php-fpm.d/www.conf
大概35行左右把 listen = 127.0.0.1:9000 修改为 listen = 127.0.0.1:9010(端口号自己定,只要端口可用)

注意用户和用户组和原来的www.conf配置里面的一样

启动PHP
/usr/local/php7.3/sbin/php-fpm
查看是否启用
ps -ef | grep php-fpm

提醒下,如果修改了PHP的配置,是要 kill 掉主程才能生效,我爱偷懒直接killall -USR2 php-fpm
将nginx 切到PHP7.3上
修改 nginx.conf
vi nginx的安装目录/conf/nginx.conf
因为之前是lnmp偷懒安装,所以他的配置文件include到了enable-php.conf

只要找到对应的fastcg_pass, 修改即可

重启nginx
测试下配置是否正确
nginx -t

不ok,查看下是不是漏分号结尾,ok的话,重启nginx
nginx -s reload
<?php
echo phpinfo();

感谢:
网友评论