欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

OneinStack PHP多版本共存教程

程序员文章站 2022-05-30 13:40:03
...
教程基于《OneinStack》一键PHP/JAVA安装工具中lnmp模式,很用户希望一个网站运行在php5.4,另一个网站运行在php7下,一台服务器上同时支持多个PHP版本,步骤如下:

1. 安装OneinStack

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

选项如下:

  1. Install Nginx

  2. Do not install Apache

  3. Do not install Tomcat

  4. Install MySQL-5.6

  5. Install php-5.4

  6. ....

2. 安装php7

  1. service php-fpm stop #后面需要再安装php,需要停止php

  2. 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:

  1. php_install_dir=/usr/local/php7

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

3. 修改php配置文件

  1. service php-fpm stop #停止php7启动脚本

  2. mv /etc/init.d/php-fpm /etc/init.d/php7-fpm #重命名php7启动脚本

  3. mv /etc/init.d/php-fpm_bk /etc/init.d/php-fpm #恢复php5.4启动脚本

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

  1. # CentOS:

  2. chkconfig --add php7-fpm

  3. chkconfig --add php-fpm

  4. chkconfig php7-fpm on

  5. chkconfig php-fpm on


  6. # Ubuntu/Debian:

  7. update-rc.d php7-fpm defaults

  8. update-rc.d php-fpm defaults

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

  1. listen = /dev/shm/php-cgi.sock

  2. #改成

  3. listen = /dev/shm/php7-cgi.sock

手工启动php5.4、php7:

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

  2. service php7-fpm start #启动php7

如下图:

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

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

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

  2. #改成

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

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

  1. service nginx reload

转载: