windows 11 上最稳组合是 apache lounge 官方二进制包 + php 官方 ts 版,截至2026年7月最新稳定版为 apache 2.4.62(vc17)与 php 8.3.12(vs17 x64 ts),需严格匹配 vc 版本、架构及线程安全类型,配置时注意 php8apache2_4.dll 路径、斜杠方向、loadmodule 行末空格,并关闭内存完整性以避免 500 错误。

Windows 11 上直接用官方 Apache Lounge + PHP 官方二进制包是最稳的组合,别碰 XAMPP、WAMP 这类集成包——它们更新慢、路径黑盒、服务管理混乱,调试时连 httpd.exe 崩在哪都找不到。
下载和解压 Apache 2.4(必须匹配 VC17 运行库)
Apache Lounge 是唯一持续维护 Windows 原生二进制的可靠来源。Win11 默认带 VC17(即 Visual C++ 2022 运行库),所以必须选标有 vc17 的版本,比如 httpd-2.4.62-win64-VS17.zip。下错成 vc15 或 vc16 会导致启动报错:The program can't start because VCRUNTIME140_1.dll is missing。
解压后建议路径简洁,例如:C:\server\apache,避免空格或中文;conf\httpd.conf 先别动,等 PHP 装完再统一配。
安装 PHP 8.3(线程安全版 + OpenSSL 支持)
去 windows.php.net 下载 Thread Safe (TS) 版本,例如 php-8.3.12-Win32-vs17-x64.zip。非 TS 版本在 Apache 的 mpm_winnt 模式下会崩溃;vs17 必须与 Apache 一致。
解压到 C:\server\php,然后做三件事:
- 重命名
php.ini-development为php.ini - 取消注释并修正
extension_dir = "ext"→ 改为绝对路径:extension_dir = "C:/server/php/ext"(注意斜杠方向) - 启用关键扩展:
extension=openssl、extension=mbstring、extension=curl(去掉前面的分号)
让 Apache 加载 PHP 模块(关键:LoadModule + AddHandler)
打开 C:\server\apache\conf\httpd.conf,在文件末尾追加:
LoadModule php_module "C:/server/php/php8apache2_4.dll" AddHandler application/x-httpd-php .php PHPIniDir "C:/server/php"
注意三点:
-
php8apache2_4.dll名字随 PHP 小版本变,8.3 对应的是这个名;8.2 是php8apache2_4.dll,但 8.1 是php8apache2_4.dll—— 别凭印象写,去C:\server\php目录里dir *.dll确认真实文件名 -
AddHandler后面不能多空格、不能换行,否则 Apache 启动失败且错误日志只报Syntax error on line XX,不提示具体哪错 -
PHPIniDir路径必须是正斜杠或双反斜杠,单反斜杠(C:\server\php)会被当成转义符处理
验证与常见启动失败排查
以管理员身份运行命令行,进入 C:\server\apache\bin,执行:
httpd.exe -t
返回 Syntax OK 才能继续。否则按错误行号查 httpd.conf;90% 是 DLL 路径错、斜杠方向错、或 LoadModule 行末多了空格。
启动服务:
httpd.exe -k install -n "Apache24" net start Apache24
如果报 OS 10048 错误,说明端口被占,改 httpd.conf 里的 Listen 8080;如果浏览器打开 http://localhost 显示 “It works!”,就建个 C:\server\apache\htdocs\info.php 写 <?php phpinfo(); ?> 测试。
最常被忽略的是:Win11 默认开启“内存完整性”(HVCI),它会拦截某些 PHP 扩展的 JIT 或调试符号加载,导致 phpinfo() 页面空白或 500 错误——临时关闭“Windows 安全中心 → 设备安全性 → 内存完整性”可快速验证是否为此原因。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











