MENU

多版本PHP并存与问题套娃

October 10, 2021 • blog

在安排新的站点的时候出现了很多问题,一连串问题,问题套问题,套娃娃中娃

切换PHP版本

因为整套程序更新了只支持PHP7.4,所以要不影响原有站点的运行,需要多版本并行

cd /root/lnmp1.7
./install.sh mphp

选择需要安装的PHP版本进行安装

cd /usr/local/nginx/conf/vhost

在虚拟主机的文件夹下面编辑vhost名字.conf,修改include enable-*.conf为对应版本,安装正确的话可在上级目录找到对应的conf文件

修改完成后重启lnmp或nginx

lnmp restart

安装拓展

修改好了PHP版本后,进行安装发现没有对应的zip拓展,于是又要安装

环境:centos7+lnmp1.7

扩展下载地址:http://pecl.php.net/get/zip

安装步骤

1、将下载的zip-1.19.2.tgz解压并上传至服务器根目录文件夹下。

2、进入该目录

cd /root/zip-1.19.2

3、在该目录下指定PHP版本安装

/usr/local/php7.4/bin/phpize
./configure --with-php-config=/usr/local/php7.4/bin/php-config
 make && make install

4、如果安装成功会提示

Libraries have been installed in
If you ever happen to want to Link against installed Libraries
IBDIR
LIBDIR
add LIBDIR to the LD LIBRARY Path'environment variableduring execution
add LIBDIR to the LD RUN Path'environment variable
rpath -WL, LIBDIR' Linker flag
have your system administrator add LIBDIR to/etc/Lds0. conf
See any operating system documentation about shared Libraries for
more infomation, such as the Ld(1)and Lds0(8)manual pages
Build complete
Don"t forget to run 'make test
/usr/Local/php7.4/Lib/php/extensions/no-debug-non-zts-20190902

5、但是事情肯定没有那么简单,非常顺利的在编译的时候报错了

“system libzip must be upgraded to version >= 0.11”

很明显这里说的是我们系统自带的libzip的版本太低了,版本低了那就弄个高点的来试试

6、这里我选择另外安装一个高版本的,同时低版本的依旧保留,并且libzip选择1.5以下的版本,这样不用安装cmake来走复杂的过程(能用就行)

wget https://libzip.org/download/libzip-1.3.2.tar.gz
tar xvf libzip-1.3.2.tar.gz
cd libzip-1.3.2
./configure --prefix=/usr/local/libzip-1.3.2
make && make install

7、然后回到zip扩展的安装,在编译时添加参数

./configure --with-php-config=/usr/local/php7.4/bin/php-config --with-libzip=/usr/local/libzip-1.3.2

然后再make && make install就可以了

8、编译安装完后,就编辑php.ini,记住是要编辑对应版本的哦,在里面找到extension集合,添加拓展

extension=zip

9、重启环境

lnmp restart
本文作者:Losir
本文链接:多版本PHP并存与问题套娃 - https://ionssource.cn/archives/64/
版权声明:如无特别声明,本文即为原创文章,仅代表个人观点,版权归 Losir 所有,未经允许不得转载!

开往-友链接力