分享一下php7和其他php多版本共存的配置教程

年前,终于迎来了期待已久的 php7 正式版,我也在第一时间就给博客用上了。性能确实有了质的飞跃,问题还是有不少的。比如鱼叔的微信插件在 php7 下面自动回复异常等。分享一下php7和其他php多版本共存的配置教程

为了继续使用微信插件,我只好将 php5.6 又开了起来,下面简单分享一下多个版本 php 共存的方法。

一、编译路径

多个版本 php 要共存,必须使用不同的安装路径。比如,之前 php5.6 安装在/usr/local/php,那么我们安装 php7 的时候,就应该定义到 /usr/local/php7 等不一样的路径。

就如之前 php7 编译安装分享的那样,把安装目录和配置文件目录都指向新的路径:

具体安装这里就不多说了,请自行翻看之前的文章==>传送门

二、配置修改

编译安装完 php7 之后,我们需要将配置文件中涉及的路径都更新为 php7 的实际路径,具体如下:

①、php-fpm.conf

如此一来,php5.6 和 php7 的 sock 监听文件分别为/dev/shm/php-cgi.sock 和/dev/shm/php7-cgi.sock。

②、nginx 配置

nginx 配置只需要修改 php 动态解析的 sock 指向即可:

在站点对应的 nginx 配置文件中(比如,vhost/zhangge.net.conf )找到:

将其中的

然后重启 nginx 就能将此站点环境更新到 php7 了。

说白了,就是你想让站点用哪个版本就修改为该版本的监听文件路径。当然,也有一些 php 用的是端口的监听模式,修改原理一致!

如果只是某些特殊的页面需要使用 php 的其他版本,也只要新增额外的 location。假如,网站有一个目录是另外的建站程序,不支持 php7,那么我们需要额外设置下即可:

更多需求,举一反三即可!

三、启动脚本

在第二步,我们修改了 php 的配置,但是也没启动 php。怎么启动很简单,我们先修改下服务脚本:

找到 PHP5.6 的服务脚本 /etc/init.d/php-fpm

现在,我们就可以使用 service php7 start 启动 php7 了,而之前的 php5.6 则继续使用 service php-fpm start 启动。

四、其他考虑

上述修改,只是让多个版本的 php 能够同时 run 起来,并未考虑多个版本的资源抢占问题。其实,还是有些许文章可以做的。

比如,php-fpm.conf 会对 php 的进程数量、响应超时等进行优化配置,很多时候我们都是用的单个 php 环境的最优配置。不过,当我们跑了多个 php 版本的时候,这些配置就应该折中考虑一下了。

就拿我博客举例,我让 php5.6 继续存在只是为了微信的一个插件,也就只是博客的小部分功能,其他绝大多数功能还是要用 php7 的,所以我在配置这个 php-fpm 的时候,会将 php7 的线程等资源给多一些,php5.6 我就只给了一个主进程和一个子线程了。

好了,以上内容就是 php 多版本共存分享,充分理解下 nginx 和 php 的交互,本文分享可有可无。

2016-3-2:分享一个纯属巧合的事情,早上搜索资料的时候,发现 linuxeye.com--linux 运维笔记比我更早的发布了 php 多版本共存教程,而且更是巧合的是,改的方式都基本一致。。。搞得好像是我抄袭的一样 o(︶︿︶)o

不过 php 的安装和配置基本也都是从他的脚本中扒的,好吧,就当我也伪原创了一把。。。

目前评论:14   其中:访客  14   博主  0

  1. rainman 4 谷歌浏览器 Mac OS X 10_10_5 日本 VPS.TO数据中心

    这样确实是好!
    php7 里全局关键字只接受简单变量,ereg_replace 没了,preg_replace 也弃用了 /e 这个参数…之前改代码改的头都炸了…多版本并存的话能省很多事…非常感谢分享~

  2. 香港独立IP主机 1 来自天朝的朋友 谷歌浏览器 Windows 7 重庆市 电信

    php7还在测试阶段,存在一些问题都很正常的,每个版本都是通过不断的测试才变得完整的

  3. 小C博客 4 来自天朝的朋友 QQ浏览器 Windows 7 浙江省杭州市 电信

    PHP7速度快,支持64位

  4. aunsen 4 United Kingdom 火狐浏览器 Windows 10 新加坡 Digital Ocean股份有限公司亚太地区新加坡数据中心

    都是货真价实的干货啊,等我神马时候上VPS了再折腾吧,向蛋疼的人是致敬!

  5. 园子大魔王 2 来自天朝的朋友 谷歌浏览器 Ubuntu Linux 广东省深圳市 电信

    主机商暂时不给部署,说还有很多bug

  6. 黄冈新闻网 0 来自天朝的朋友 谷歌浏览器 Windows Server 2003 上海市松江区 电信

    php5.几的版本很经典 但是php7效率高。。。。

  7. 好文推荐 4 来自天朝的朋友 谷歌浏览器 Windows 10 广东省广州市 电信

    感谢分享

  8. 每天签到赚10元 2 来自天朝的朋友 谷歌浏览器 Windows 7 河北省石家庄市 电信

    这样确实是好!

  9. 杨果果 0 来自天朝的朋友 Internet Explorer Windows 7 浙江省温州市 电信

    高清蓝光3D。4K电影拷贝网站www.hdtv668.com

  10. 影院椅 0 来自天朝的朋友 谷歌浏览器 Windows 7 广东省佛山市 电信

    哈,我用UPUPW集成环境可以多个PHP版本共存的

  11. 给你吧网盘资源 2 来自天朝的朋友 火狐浏览器 Windows XP 广东省东莞市 电信

    我最烦代码有什么办法。

  12. 朴人博客 0 来自天朝的朋友 谷歌浏览器 Windows 8.1 广东省深圳市福田区 电信

    很牛逼的运维

  13. 楚云 0 来自天朝的朋友 QQ浏览器  Android 6.0.1 MI 4LTE Build/MMB29M 黑龙江省牡丹江市 联通

    学到了

  14. 前端养成记 1 来自天朝的朋友 谷歌浏览器 Windows 7 上海市 电信

    1w签到成功!签到时间:下午4:28:54,每日签到,生活更精彩哦~

加载中,请稍候...

文章过于久远,评论已关闭!