oneinstack一键包Nginx php多版本共存配置全过程

来源:互联网 发布:皮皮麻将算法 编辑:程序博客网 时间:2024/06/01 09:15

oneinstack一键包Nginx php多版本共存配置全过程

3285人阅读 评论(0)收藏举报
分类:

oneinstack一键包地址:http://oneinstack.com/install/ 非常好用的一键包。下面说说基于oneinstack一键包的 

Nginx php多版本共存配置全过程

第一步:下载完成后修改


修改/root/oneinstack/options.conf修改php存放目录

便于区分改成php_install_dir=/usr/local/php7,ok,一步步等待安装完成。php7安装完成后,然后我们再安装php5


同样修改php安装目录。注意这一步只安装php5即可,安装的时候先停止php-fpm。


[plain] view plain copy print?
  1. service php-fpm stop  


ok,等待编译完成。如上,我们已经做好了基础的准备工作。


第一步:修改/php安装目录/etc/php-fpm.conf (便于区分各个php版本)


[plain] view plain copy print?
  1. [www]  
  2. listen = /dev/shm/php-cgi.sock  
  3. listen.backlog = -1  
  4. listen.allowed_clients = 127.0.0.1  
  5. listen.owner = www   
  6. listen.group = www   
  7. listen.mode = 0666  
  8. user = www   
  9. group = www   

如上,是我们php7的,我们修改成


[plain] view plain copy print?
  1. [www]  
  2. listen = /dev/shm/php-cgi7.sock  
  3. listen.backlog = -1  
  4. listen.allowed_clients = 127.0.0.1  
  5. listen.owner = www   
  6. listen.group = www   
  7. listen.mode = 0666  
  8. user = www   
  9. group = www   


同理,我们修改php5版本的修改如下

[plain] view plain copy print?
  1. [www]  
  2. listen = /dev/shm/php-cgi5.sock  
  3. listen.backlog = -1  
  4. listen.allowed_clients = 127.0.0.1  
  5. listen.owner = www   
  6. listen.group = www  
  7. listen.mode = 0666  
  8. user = www   
  9. group = www   


ok,这会,我们可以手工启动php7或者php5 

[plain] view plain copy print?
  1. /usr/local/php5/sbin/php-fpm  


ok,我们来查看下php进程

[plain] view plain copy print?
  1. ps -ax | grep php  

可以看到,我们的两个php版本已经ok了



第二步:便于管理,我们复制两份init.d文件

定位到目录/etc/rc.d/init.d,可以看到只有一份php-fpm


复制两份,分别修改

[plain] view plain copy print?
  1. prefix=/usr/local/php7  

分布修改到php5和php7目录,如下我们创建了2个


记得修改两个文件的权限为775即可。如下,我们可以用命令非常方便的管理php-fpm


[plain] view plain copy print?
  1. ##  添加执行权限  
  2. chmod a+x /etc/init.d/php-fpm5  
  3.   
  4. chmod a+x /etc/init.d/php-fpm7  

[plain] view plain copy print?
  1. ##  加入服务  
  2.   
  3. chkconfig --add php-fpm5  
  4.   
  5. chkconfig --add php-fpm7  


[plain] view plain copy print?
  1. ##   开机自启  
  2.   
  3. chkconfig php-fpm5 on  
  4.   
  5. chkconfig php-fpm7 on  
  6.      


管理php5:

service php-fpm5 {start|stop|restart|reload|status}
管理php7:

service php-fpm7 {start|stop|restart|reload|status}


第三步:修改nginx vhost文件

[plain] view plain copy print?
  1. location ~ [^/]\.php(/|$) {  
  2.     #fastcgi_pass remote_php_ip:9000;  
  3.     fastcgi_pass unix:/dev/shm/php7/php-cgi.sock;  
  4.     fastcgi_index index.php;  
  5.     include fastcgi.conf;  
  6.     }  

我们只需要修改

[plain] view plain copy print?
  1. fastcgi_pass unix:/dev/shm/php-cgi5.sock;  

或者

[plain] view plain copy print?
  1. fastcgi_pass unix:/dev/shm/php-cgi7.sock;  

选择不同的php版本更改socket即可!


ok,大功告成!现在可以随心所欲的切换版本了。最后要说的是 我们每次升级PHP版本都必须修

/root/oneinstack/options.conf的php路径。也算非常方便了。

原创粉丝点击