C:/Apache24/conf/httpd.conf: 无法将 c:/php7/php7apache2.dll 加载到服务器:找不到指定的模块

C:/Apache24/conf/httpd.conf: Cannot load c:/php7/php7apache2.dll into server: The specified module could not be found

我是新的 apache 和 php。我在 C 盘安装了 Apache 服务器,C:\Apache24。然后我使用这个命令在 CMD 中安装了服务 httpd -k install。然后我去 Windows 服务。我可以启动和停止 Apache2.4,它工作正常。我想 运行 php 项目。现在我在 C:\php7 中安装了 php。

PHP版本:

PHP 7.3.0RC3 (cli) (built: Oct 10 2018 01:23:45) ( NTS MSVC15 (Visual C++ 2017) x64 ),
Copyright (c) 1997-2018, The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies

然后我打开 Apache httpd.conf 文件 (C:/Apache24/conf/httpd.conf).

PHPIniDir "C:/php7"
AddHandler application/x-httpd-php .php
LoadModule php7_module "C:/php7/php7apache2_4.dll"  [this is line no 550]

我在 httpd.conf 中添加了上面的行。然后使用此命令启动 Apache httpd -k start 或另一个我可以在 Windows Services 中启动它。

因此,我收到了这个错误。为什么我不知道。

C:\Apache24\bin>httpd -k start
httpd: Syntax error on line 550 of C:/Apache24/conf/httpd.conf: Cannot load c:/php7/php7apache2.dll into server: The specified module could not be found.

我自己想出来了。我安装了线程安全版本。 请不要安装非线程安全版本。

线程安全版本是 VC15 x64 线程安全 (2018-Oct-10 19:19:47)

我在 Apache httpd.conf 文件中添加了这一行。

AddHandler application/x-httpd-php .php 
AddType application/x-httpd-php .php .html 
LoadModule php7_module "c:/php730rc3/php7apache2_4.dll" 
PHPIniDir "c:/php730rc3"

我也报这个错,在确认这个模块存在于/modules/后,我检查了httpd.conf,发现SRVROOT是错误的。

Define SRVROOT "D:/Project/Apache24/bin"   //wrong
Define SRVROOT "D:/Project/Apache24"      //correct

您必须像管理员一样具有访问 cmd 的权限。我假设您也已更改 httpd.conf 并且您已将 ${SRVROOT}.. 修改为 C:/localhost(您必须在 C 中具有文件夹 localhost)。并安装 线程安全版本