无法将 C:/php/php7apache2_4.dll 加载到服务器中:%1 不是有效的 Win32 应用程序
Posted
技术标签:
【中文标题】无法将 C:/php/php7apache2_4.dll 加载到服务器中:%1 不是有效的 Win32 应用程序【英文标题】:Cannot load C:/php/php7apache2_4.dll into server: %1 is not a valid Win32 application 【发布时间】:2018-06-13 08:20:38 【问题描述】:所以几乎一直以来,这个问题都归结为 Apache 和 php 的 Windows x32/x64 版本或各自的二进制版本不匹配。但我已经三重检查和四重检查它们是正确的版本。所以现在我彻底被难住了。
这是我添加到 httpd.conf 文件底部的行:
AddHandler application/x-httpd-php .php
AddType application/x-httpd-php .html .htm
LoadModule php7_module "C:/php/php7apache2_4.dll"
PHPIniDir "C:/php"
没有这个,Apache 运行完全正常。但是当我添加这个位来安装PHP时,出现以下错误:
httpd: Syntax error on line 535 of C:/Apache24/conf/httpd.conf: Cannot load C:/php/php7apache2_4.dll into server: %1 is not a valid Win32 application.
我下载的版本是:
httpd-2.4.29-Win64-VC15
php-7.2.1RC1-Win32-VC15-x64
我相信这些是兼容的位和二进制版本。 Win64 和 VC15(我相信 php 下载中的“Win32”并不表示 Win32 版本,因为我花了很多时间研究这是否是我的问题)。
有什么想法吗?
谢谢。
【问题讨论】:
您是否安装了相应的 Visual C++ 可再发行组件? 哦,好吧,我想你必须拥有,否则 Apache 将无法工作。 是的,也是 x64 位 (VC_redist.x64) 【参考方案1】:不知道明确的问题是什么,但我只是删除了所有我下载并重新下载/解压缩的 PHP 文件,就像我最初所做的那样,将它们像以前一样放在相应的文件夹中,现在它可以工作了。
我仍然很困惑为什么我必须这样做才能让它工作,但它现在可以工作了,这就是我想要的。
美好的一天!
【讨论】:
【参考方案2】:下载与您的 Windows 版本兼容的 php。 例如:如果您使用的是win32或win64位,请在此版本的Windows上下载php。
【讨论】:
欢迎来到 Stack Overflow。请使用正确的语法详细说明您的答案,并描述您解决此问题时的实例。 您的答案应该更详细地描述可疑的潜在问题和建议的解决方案。【参考方案3】:遇到了同样的问题。这是为我解决的问题:
换行:
LoadModule php7_module "C:/php/php7apache2_4.dll"
到:
LoadModule php7_module C:/php/php7apache2_4.dll
是的,只需删除引号!
【讨论】:
【参考方案4】:我有同样的问题,版本不兼容。
-
我下载的是 32 位版本的 PHP
删除了行中的双引号
LoadModule php7_module "C:/php/php7apache2_4.dll"
到
LoadModule php7_module C:/php/php7apache2_4.dll
它对我有用,希望它也对你有用。
【讨论】:
以上是关于无法将 C:/php/php7apache2_4.dll 加载到服务器中:%1 不是有效的 Win32 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
swift 4.2 无法将类型“(_)-> Void”的值转换为预期的参数类型“(()-> Void)?”
将 tensorflow 从 2.1.2 升级到 2.3.0 后,Tensorboard 无法使用
无法下载 http://adcdownload.apple.com/ios/ios_sdk_4.2__final/xcode_3.2.5_and_ios_sdk_4.2_final.dmg
Android 模拟器 SDK 工具更新到 31.1.4 无法运行
-[__NSArrayI replaceObjectAtIndex:withObject:]: 无法识别的选择器发送到实例