无法使用Apache 2.4从PHP5切换到PHP7

Lip*_*yor 2 php apache

我最近下载了最新版本的AppServ(Appserv8)for Windows.它安装Apache 2.4,MySQL 5.7和版本的PHP5PHP7.安装后,使用的PHP版本为5.

我尝试使用随安装提供的脚本" PHP Version Switch " 来切换版本,但它似乎无法正常工作.

我试图手动编辑http.conf文件Apache24夹中的文件,但没有结果.

使用这些行Apache通常使用PHP5启动:

LoadModule php5_module C:/AppServ/php5/php5apache2_4.dll
PHPIniDir "C:/AppServ/php5/"
Run Code Online (Sandbox Code Playgroud)

如果我编辑:

LoadModule php7_module C:/AppServ/php7/php7apache2_4.dll
PHPIniDir "C:/AppServ/php7/"
Run Code Online (Sandbox Code Playgroud)

当我尝试启动Apache时,我收到以下错误:

httpd.exe: Syntax error on line 180 of C:/Appserv/Apache24/conf/httpd.conf: Cannot load C:/Appserv/php7/php7apache2_4.dll into server: Impossibile trovare il modulo specificato.
Run Code Online (Sandbox Code Playgroud)

(部分错误是意大利语:无法找到指定的模块)

请注意,dll位于路径中指定的文件夹中.我坚持这个错误,我不知道我在哪里修改配置文件(如果这是问题).

EDIT1: 在某个地方我发现了这个讨论,其中作者解释说,由于Visual C++的依赖性,DLL可能无法读取.我检查了我的系统,我从多个Microsoft Visual C++可再发行组件安装中清除它,我尝试安装x64或x86版本.

使用x86版本,我遇到了上一个问题.使用x64版本,由于缺少dll,我无法启动Apache:应该是因为apache是​​x86版本(我不确定).

EDIT2: 正如@chugadie所建议的那样,我尝试使用dependencywalker来跟踪依赖关系.我找到了几个带前缀的丢失文件API-MS-WIN-CRT.现在我正在尝试修复但是我有几个问题,dll是x86和x64.我认为最好的方法是在x64架构中重新安装所有组件.

非常感谢任何帮助.

All*_*rez 5

在开始菜单(或Win键+ S)上的AppServ文件夹上,您必须为PHP版本开关搜索并且它将请求管理员权限(如果您拒绝它,它将无法工作),那么它将显示一个cmd控制台,请求您使用PHP要在Apache上设置的版本,按7切换PHP 7或按5切换PHP5.

如果您这样做并且它将无法工作,您应该撤消在AppServ文件上执行的更改.