共计 1463 个字符,预计需要花费 4 分钟才能阅读完成。
本文由 LinuxProbe.Com 团队成员 魏丽猿 整理发布,原文来自:Linux 运维笔记。
基于《OneinStack》一键 PHP/JAVA 安装工具中 lnmp 模式,很多用户希望一个网站运行在 php5.4,另一个网站运行在 php7,甚至更多版本的 php,那么一台服务器上同时支持多个 PHP 版本应该如何做呢?
选择 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
....
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
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 开机自启动:
chkconfig --add php7-fpm
chkconfig --add php-fpm
chkconfig php7-fpm on
chkconfig php-fpm on
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
如下图:
./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