去评论
dz插件网

phpStady2016同时运行多版本php

迪巴拉
2023/04/21 18:22:44
由于phpStudy2016过于经典,只需要将php版本下载过来,就可以切换到对应的php版本,太方便了。于是不想换套件,一是换套件后,所有的域名可能要重新配置一遍,太麻烦;二是各套件中的apache版本不一,配置不尽相同,不想为了这些差异消耗我的时间。但是,现在手头有一个棘手的问题:我想写一个dz插件,官方要求兼容多个dz版本,我看了一下dz版本,每个dzx版本需要的最高php不一致。比如dzx3.0最高可用php5.6;dzx3.4最高可以php7.2;最新版dzx3.5最高可用php8.2。如果统一用php5.6开发的话,学习不到最新的知识,也感觉不到版本的差异,比如性能差异等等。

于是,想着nginx可以轻松的切换php版本,apache也应该可以切换版本。看了一下phpStudy2016版本的apache版本为2.4.23_win32,使用mpm+fcgi模式运行php。
先看结果:


如何,嗨皮不?来,咱们看看操作过程:第一步(可选):注释掉无用信息

   apache配置文件修改点:E:\php\phpStudy2016\Apache\conf\httpd.conf 
   注释cgi.so第99行
   注释isapi.so第121行第二步:添加对应版本的php信息

  网站配置文件添加两行代码:E:\php\phpStudy2016\Apache\conf\vhosts.conf
  1. FcgidInitialEnv PHPRC "E:/php/phpStudy2016/php/php-5.6.27-nts/"
  2. FcgidWrapper "E:/php/phpStudy2016/php/php-5.6.27-nts/php-cgi.exe" .php

  如下图(注,此图中的PHP路径是错误的,应该与上面文字路径保持一致,感谢网友的提醒。此法确实可行,我本地也在用):

通过以上操作,就可以实现在phpStady2016下实现多版本php同时运行。