oneinstack 安装多个php版本

本文详细介绍如何在系统中安装并配置多个版本的PHP,包括修改安装路径、配置开机启动及解决版本间sock监听冲突等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.关闭已有的php-fpm (我这里是php5.6)进程,并备份php-fpm进程启动脚本

service php-fpm stop
mv /etc/init.d/php-fpm{,_bk}
  1. oneinstack里php的默认安装路径是/usr/local/php,如果继续安装别的版本,需要更改参数配置避免这里的文件被覆盖。

我们切到oneinstall的安装包目录下,找到options.conf文件,然后打开

php_install_dir=/usr/local/php

这里我们可以根据自行的需要进行修改,

例如这里需要安装php7.2,就将这里改成了

php_install_dir=/usr/local/php72
wq修改保存以后,运行./install.sh

开始onestack组件安装,这里除了选择安装php7.2以外,其他都选择n.

3.安装完成后,修改php的配置文件

先停掉php-fpm的进程

systemctl stop php-fpm

然后

mv /etc/init.d/php-fpm /etc/init.d/php72-fpm
mv /etc/init.d/php-fpm_bk /etc/init.d/php-fpm

(恢复原有的php-fpm的启动脚本)

设置一些开机启动事项

例如

chkconfig --add php-fpm
chkconfig php-fpm on
chkconfig --add php72-fpm
chkconfig php72-fpm on

ubuntu/debian请看这里

update-rc.d php-fpm defaults
update-rc.d php72-fpm defaults

防止php5.6、php7.2监听sock冲突,修改php的listen配置文件

例如

vim /usr/local/php72/etc/php-fpm.conf

将listen = /dev/shm/php-cgi.sock 修改为

listen = /dev/shm/php72-cgi.sock

4.重启php-fpm服务

systemctl php-fpm start
systemctl php72-fpm start

5.nginx中如何使用?

修改nginx配置文件,例如

vim /usr/local/nginx/conf/vhosts/a.com.conf

将location php 中的
fastcgi_pass unix:/dev/shm/php-cgi.sock;
更改为
fastcgi_pass unix:/dev/shm/php72-cgi.sock;
然后保存,
/usr/local/nginx/sbin/nginx -s reload
ps:

补充说明

检测php多版本安装情况

ps -ef|grep php-fpm
在这里插入图片描述在这里插入图片描述
oninstack是自动检测内存大小,根据内存大小划分fpm的进程数。也就是说,每个版本的php-fpm子进程都是按照内存满载划分
要适当的到php-fpm.conf里面把子进程数量减小点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值