OneinStack环境多PHP版本的安装共存与站点的设置

国外主机优惠在前面\”LNMP一键环境安装多PHP版本共存的方法\”文章中有分享到LNMP一键环境中如果需要安装多版本PHP共存且不同站点使用不同PHP版本还是比较简单的,安装之后在创建站点的时候可以选择需要的PHP版本。在这篇文章中,国外主机优惠准备看看OneinStack环境如何进行安装多版本PHP的。

同样的老生常谈的问题,如果不熟悉操作的建议先将数据备份,有能快照备份服务器的可以备份,或者将数据备份到本地,万一出现问题可以有办法恢复。在这篇文章的演示中,国外主机优惠是用的测试机,所以不存在担心弄丢数据问题。

第一、检查当前PHP版本

这里我当前环境是PHP5.5版本,我的测试目的是去安装PHP7进来与这个版本PHP共存。

service php-fpm stop #暂停PHP

mv /etc/init.d/php-fpm{,_bk} #备份启动脚本

第二、安装PHP7

1、修改配置文件

/root/oneinstack/options.conf

这里我们将\”php_install_dir\”后面参数修改成\”/usr/local/php7\”。

2、安装PHP7

./install.sh

然后执行安装,只要安装PHP7就可以了,其他都不安装,选择n

自动安装,然后安装完毕。

暂时我们不要重启,等后面再重启。

第三、修改配置文件

1、基本操作

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启动脚本

2、设置开机启动

# 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

3、设置php7环境listen

/usr/local/php7/etc/php-fpm.conf

listen = /dev/shm/php-cgi.sock 改成 listen = /dev/shm/php7-cgi.sock

第四、启动PHP

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

第五、站点分配

既然我们当前服务器环境中有PHP5和PHP7环境之后,那如何使用到不同的站点中呢?在当前站点的.conf文件中将:

fastcgi_pass unix:/dev/shm/php-cgi.sock;

改成

fastcgi_pass unix:/dev/shm/php7-cgi.sock;

修改替换之后,重启nginx才可以生效。

看来方法是可行的。

总结,这个相比LNMP配置确实稍微麻烦一点,很多都需要手动配置文件的。国外主机优惠已经提议给官方,看看是否可以改成类似LNMP自动化一些的方法。本文有参考:https://blog.linuxeye.cn/441.html,经过实践测试是可以实现多PHP同存的。