【问题标题】:Apache, PHP, The specified module could not be foundApache,PHP,找不到指定的模块
【发布时间】:2014-04-11 13:18:23
【问题描述】:

我正在尝试在 Windows 8 64 位系统上使用 apache(httpd 2.4.7) 设置 php 5.5.10

在 httpd.conf 中添加了以下几行

LoadModule php5_module "c:/apps/php/php5apache2_4.dll"
PHPIniDir 'C:/apps/php'
AddHandler application/x-httpd-php .php

我收到以下错误。 httpd.exe:C:/apps/Apache24/conf/httpd.conf 第 179 行的语法错误:不能 将 c:/apps/php/php5apache2_4.dll 加载到服务器中:指定的模块无法 找到了。

没有 php modules config apache 可以正常启动。但是当我添加 php 模块时,我得到了这个错误。 我使用线程安全的 php,而 php5apache2_4.dll 实际上存在于指定位置。

我还按照线程中的建议将 C:/apps/php 添加到我的 Windows 路径中。我还使用了 php.ini-production 并将名称更改为 php.ini 我没有对 php.ini 进行任何进一步的更改

关于如何解决此问题的任何指示?

【问题讨论】:

  • 你安装apache时使用的VC发行版号是多少?
  • 这些是 x86 还是 x64 版本?
  • Apache 和 PHP 都是 x86 版本。我为 Apache 服务器使用 Visual Studio 2008 (VC9) 构建
  • @Ohgodwhy 感谢您的指点。使用 Apache 的 VC11 版本为我解决了这个问题。我还安装了 readme_first.html 中提到的 VC11 Redistributable

标签: php windows apache


【解决方案1】:

检查httpd.conf 文件中的SRVROOT,它应该指向您的Apache 安装的根文件夹,而不是htdocs 文件夹。

示例配置,这是我的配置中的第一行:

Define SRVROOT "D:/Server/Apache24/"
ServerRoot "${SRVROOT}"

【讨论】:

    【解决方案2】:

    遇到了同样的问题。该文件在那里,但 Apache 抱怨它找不到该模块。
    您可能必须“安装 VC Redistributable 的早期版本,因为较新的版本不涵盖较早的版本”。

    看到这个答案:https://stackoverflow.com/a/42724749/2016386

    在我的情况下,安装 Visual C++ Redistributable 2012 和 2015 后错误消失了。

    【讨论】:

    • 就像我在问题评论中提到的那样,很久以前我也遇到了类似的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 2011-01-05
    • 2021-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多