OneinStack多版本PHP共存

基于《OneinStack》一键PHP/JAVA安装工具中lnmp模式,很多用户希望一个网站运行在php5.4,另一个网站运行在php7,甚至更多版本的php,那么一台服务器上同时支持多个PHP版本应该如何做呢?

1、安装OneinStack

选择lnmp模式,默认安装php5.4,安装步骤参考:http://oneinstack.com/install/
选项如下:

Install Nginx
Do not install Apache
Do not install Tomcat
Install MySQL-5.6
Install php-5.4
....
2、 安装php7
service php-fpm stop                      #后面需要再安装php,需要停止php
mv /etc/init.d/php-fpm{,_bk}              #后面需要再安装php会覆盖,备份启动脚本

默认php5.4安装路径是/usr/local/php,如果再次安装会提示php已经安装,因此必须修改options.conf的php安装目录,将php7安装路径设置为/usr/local/php7,修改/root/oneinstack/options.conf:

php_install_dir=/usr/local/php7

再次执行./install.sh,选择Install php-7,其余均选择n

3、修改php配置文件
service php-fpm stop                                        #停止php7启动脚本
mv /etc/init.d/php-fpm /etc/init.d/php7-fpm                 #重命名php7启动脚本
mv /etc/init.d/php-fpm_bk /etc/init.d/php-fpm               #恢复php5.4启动脚本

设置php5.4、php7开机自启动:

CentOS:
chkconfig --add php7-fpm
chkconfig --add php-fpm
chkconfig php7-fpm on
chkconfig php-fpm on
Ubuntu/Debian:
update-rc.d php7-fpm defaults
update-rc.d php-fpm defaults

防止php5.4、php7监听sock冲突,修改php7的listen,更改配置文件/usr/local/php7/etc/php-fpm.conf:

listen = /dev/shm/php-cgi.sock                  #修改前
listen = /dev/shm/php7-cgi.sock                 #修改后

手工启动php5.4、php7:

service php-fpm start  #启动php5.4
service php7-fpm start #启动php7

如下图:
multi-php

4、 修改nginx虚拟主机配置文件

./vhost.sh绑定域名,默认是运行在php5.4,如需要将网站运行在php7下,需要修改/usr/local/nginx/conf/vhost/www.oneinstack.com.conf(www.oneinstack.com改成自己绑定域名):

fastcgi_pass unix:/dev/shm/php-cgi.sock;                #修改前
fastcgi_pass unix:/dev/shm/php7-cgi.sock;               #修改后

重新加载nginx,使配置生效:

service nginx reload


本文转载自: http://www.linuxprobe.com/oneinstack-more-php/

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好: http://www.linuxprobe.com/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值