程序员的知识教程库

网站首页 > 教程分享 正文

联想实验场之Windows中单Apache运行多PHP版本

henian88 2024-10-27 10:09:38 教程分享 4 ℃ 0 评论

在日常工作或学习中,难免会遇到一些版本不兼容的项目或尝试使用一些更新的版本,为了解决此类问题,我就做了如下的配置方便使用。我个人机器上环境是基于Apache2.4.25运行的PHP5.6/7.0,如你想部署其他版本的PHP或在更多的版本之间切换,同理操作步骤是一致的。

依本人环境为例,机器上已经安装了PHP5.6版本, 所以首先重新创建5.6的服务:

如果你机器上已经运行了Web Server服务,可先暂停并设置为手动执行(因后续我们几乎不再默认运行此服务了)。

编辑httpd.conf配置文件,加入以下形式的内容

<ifdefine php5.6>

# 提供apache调用的php5.6版本dll路径

LoadModule php5_module "e:/AppServ\php5\php5apache2_4.dll"

# 你的php5.6版本php.ini路径

PHPIniDir "E:/AppServ/php5/php.ini"

</ifdefine>

打开cmd命令行,切换到你的Apache bin目录,执行如下命令

httpd.exe -k install -n Apache_php5.6 -D php5.6

现在你可以重启新的名为Apache_php5.6服务,在PHP中打印phpinfo()来测试运行是否正常

上述过程无误的话,可以继续进行PHP7.0版本的配置了,你会感觉有种熟悉的感觉了

下载PHP7.0的二进制版本,并解压到你希望放置的目录(我机器上路径为:E:/AppServ/php7)

再次编辑httpd.conf配置文件,加入以下形式的内容

<ifdefine php7>

LoadModule php7_module "E:/AppServ/php7/php7apache2_4.dll"

PHPIniDir "E:/AppServ/php7/php.ini"

</ifdefine>

打开cmd命令行,创建php7.0服务的apache服务

httpd.exe -k install -n Apache_php7.0 -D php7

经过这样的配置,我们就实现了在不同PHP版本之间的切换。为了日常的操作方便,我们还可以编写Bat文件来快速自动切换。

@echo off

@sc query apache_php7.0 | find /i "running" > null

if %ERRORLEVEL% == 0 (

net stop apache_php7.0

net start apache_php5.6

) else (

net stop apache_php5.6

net start apache_php7.0

)

pause

至此环境配置完毕~

作者:JohnBeanLee

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表