centos7.x安装多个php版本(php5.6和php7.3区别)

centos7.x安装多个php版本,php5.6和php7.3区别

  • 一、依赖考虑
  • 二、用户组
  • 三、安装
    • ./configure时都指定安装位置,都放在一起,统一管理,如:
    • ./configure时都指定配置文件路径,否则某个PHP版本会默认安装到/etc/php.ini,会有冲突,所以指定配置文件来避免,如:
    • 指定php-fpm的位置及命名
    • nginx同时运行两个版本的PHP,监听端口改成不同

一、依赖考虑

两个版本的PHP的依赖都必须要装齐
将两个PHP版本都装到/usr/local/webservice/中,如:
mkdir /usr/local/webservice/php56
mkdir /usr/local/webservice/php73

二、用户组

将两个版本用www管理,如:
groupadd www
useradd -g www www

三、安装

./configure时都指定安装位置,都放在一起,统一管理,如:

#php56的

--prefix='/usr/local/webservice/php56'

#php73的

--prefix='/usr/local/webservice/php73'

./configure时都指定配置文件路径,否则某个PHP版本会默认安装到/etc/php.ini,会有冲突,所以指定配置文件来避免,如:

#php56的

--with-config-file-path=/usr/local/webservice/php56/etc

#php73的

--with-config-file-path=/usr/local/webservice/php73/etc

指定php-fpm的位置及命名

#php56的
cp /usr/local/src/php56/sapi/fpm/init.d.php-fpm /etc/init.d/php56-fpm
chmod +x /etc/init.d/php56-fpm
/etc/init.d/php56-fpm start/restart/stop #启动php5.6的fpm
#php73的
cp /usr/local/src/php73/sapi/fpm/php-fpm.service /usr/lib/systemd/system/php73-fpm
systemctl start php73-fpm.service #启动

nginx同时运行两个版本的PHP,监听端口改成不同

在php56-fpm对应配置文件运行的端口改成9000
在php73-fpm对应的配置文件将运行端口改成9073

#php56的
vim /usr/local/webservice/php5.6/etc/php-fpm.conf

listen = 127.0.0.1:9000

#php73的
vim /usr/local/webservice/php73/etc/php-fpm.d/www.conf

listen = 127.0.0.1:9073

你可能感兴趣的:(php,centos)