【问题标题】:php5apache2_4.dll not found errorphp5apache2_4.dll 未找到错误
【发布时间】:2013-07-12 06:53:41
【问题描述】:

我正在尝试在 Apache 上集成 php。以下是我正在使用的版本

Apache 2.4 (httpd-2.0.64-win32-x86-openssl-0.9.8o)
PHP (php-5.5.0-Win32-VC11-x64.zip)

我在 64 bit windows 7 机器上设置这个。我已经按照this 进行了配置,但是即使我已将dll 放在指定的文件夹中,我也会收到以下错误。

无法将 C:/php/php5apache2_4.dll 加载到服务器:指定的 找不到模块。

httpd.conf 行条目是这样的

LoadModule php5_module "C:/php/php5apache2_4.dll"

是否存在版本兼容问题?

【问题讨论】:

  • 是的,这里有一个版本不兼容的问题。您正在尝试将古老的 Apache 2.0 与 PHP for Apache 2.4 的副本一起使用。
  • 我尝试使用 apache 2.4 64 位和 php 5.5,仍然得到同样的错误。

标签: php apache windows-7-x64


【解决方案1】:

我能够让 PHP (5.5) 在 Windows(7 和 8)上与 Apache (2.4) 一起工作的唯一方法是确保 Apache 和 PHP 都是 32 位 (x86)或 64 位 (x64) 并且 Apache 和 PHP 都是线程安全 (TS)。使用非线程安全 (NTS) 对我(或其他人)不起作用,并且线程安全构建与 PHP “php5apache2_4.dll”所需的 Apache 模块捆绑在一起。一旦我的所有位深度和线程安全性匹配,Apache 2.4 和 PHP 5.5 就可以在我的 Windows 系统上很好地协同工作。

这两个产品还必须使用相同的主要版本的 Microsoft Visual Studio/C++ 编译,例如 VC6(旧版 VC++ 编译器)、VC9=Studio 2008 或 VC11=Studio 2012。对于上述 Apache 版本,仅常用的是VC9或VC11。

链接:

在此处获取 Windows Apache 二进制文件: http://www.apachelounge.com/download/

在此处获取 Windows PHP 二进制文件: http://windows.php.net/download/

为用于为 Windows 准备 Apache 和 PHP 的特定 Visual Studio 版本安装 Visual C++ Redistributable 编译器运行时库:

2012:http://www.microsoft.com/en-us/download/details.aspx?id=30679

2008:http://www.microsoft.com/en-us/download/details.aspx?id=5582

【讨论】:

  • 安装可再发行组件帮了我的忙。
  • 这里对我的重要提示是非线程安全版本不附带 dll。知道这一点很有帮助。
【解决方案2】:

你说得对,Marty,它们只有在两者都是 32 位或 64 位时才有效。我使用XAMPP- Apache's distributed installation 解决了这个问题。

【讨论】:

    【解决方案3】:

    Apache win 32 with 64 bits 这是问题,你需要 Apache64

    【讨论】:

    • 没有。你可以在 64 位上运行 32 位。
    • 我想他的意思是,如果你的 Apache 是 32 位的,你就不能用它运行 64 位的 PHP DLL。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-09
    • 1970-01-01
    • 2017-09-21
    相关资源
    最近更新 更多