apache 2.4 + php 5.4.7 无法加载 php5apache2_4.dll

got*_*tha 6 windows-7 apache-http-server php

我正在尝试使 Apache (httpd-2.4.3-win32) 在 Windows 7 上与 PHP 5.4.7 (VC9 x86 线程安全) 一起使用。

Apache 的默认页面正在运行,并自豪地说:“它有效”。PHP CLI 正在运行并报告版本 5.4.7

我从 apachelounge 下载了 php5apache2_4.dll-php-5.4-win32.zip 并将 5.4.7 的 dll 解压缩到 ~/php/ext/

当我添加

LoadModule php5_module "...../php/ext/php5apache2_4.dll" 
AddHandler application/x-httpd-php .php
Run Code Online (Sandbox Code Playgroud)

apache 服务拒绝启动,事件查看器说:

The Apache service named  reported the following error:
httpd.exe: Syntax error on line 526 of C:/.../bin/Apache24/conf/httpd.conf: Cannot load c:/.../bin/php/ext/php5apache2_4.dll into server: The specified procedure could not be found.
Run Code Online (Sandbox Code Playgroud)

我使用了 php 线程安全版本,php 和 apache 32 位。

我错过了什么?任何想法如何解决这一问题 ?

小智 2

正确版本的 php5apache2_4.dll 应该位于 PHP 文件夹的根目录中。最新的线程安全 Windows 32 位 PHP 二进制文件为版本 5.4.15,位于http://windows.php.net/。您不需要从其他地方下载 php5apache2_4.dll,我当然不建议这样做。

所以 http.conf 应该包含:

LoadModule php5_module C:/php/ext/php5apache2_4.dll
Run Code Online (Sandbox Code Playgroud)

Apache Lounge 提供的最新 Apache 2.4 Win32 二进制文件位于 httpd-2.4.4-win32.zip 中。

最后,尝试将您的行:“AddHandler application/x-httpd-php .php”更改为:

AddType application/x-httpd-php .php
Run Code Online (Sandbox Code Playgroud)

顺便说一句,如果您想运行 Apache 2.4 64 位,则需要使用仅可从 Anindya 博客获取的 64 位 PHP

在没有看到其余配置的情况下,除了在某处设置错误的路径之外,我想不出其他任何东西,但是有各种有用的教程(例如,请参阅:Windows 上的 Apache、PHP 和 MySQL 设置)。

我今晚刚刚完成了完整的网络服务器安装,使用上述源的完整 Apache/PHP 安装大约花了一个小时(包括错误!)。