windows搭php站点环境核心四步:装php解释器、配web服务器(apache/nginx)、连mysql、调php.ini;缺一步即导致localhost空白或报500/connection refused。

直接上结论:Windows搭PHP站点环境,核心就四步——装PHP解释器、配Web服务器(Apache/Nginx)、连数据库(MySQL)、调php.ini。跳过任意一步,localhost 页面要么空白、要么报 500 Internal Server Error 或 Connection refused。
怎么选PHP安装包(TS/NTS、VC版本、位数)
PHP不是下个exe点下一步就行。关键参数错一个,php -v 就报“找不到指定模块”或 Apache 启动失败。
- 必须选
Thread Safe (TS)版本——因为 Apache 是多线程模型,NTS 只适合 CLI 或 Nginx + PHP-FPM 场景 - VC 版本要和 Apache 匹配:Apache Lounge 官方编译用的是 VC17(对应 VS2022),就下
VC17 x64的 PHP;老项目用 VC15 或 VC11,就得找对应包 - 位数必须一致:64 位 Apache 必须配 64 位 PHP,混用会直接崩溃(
httpd.exe -k start无响应) - 下载地址认准官方:
windows.php.net/downloads/releases/,别从第三方镜像站下,容易缺php8apache2_4.dll
Apache 加载 PHP 模块的三处硬编码路径
在 httpd.conf 里加 LoadModule 不是复制粘贴就完事。路径写错一个字符,Apache 启动时静默失败,日志里只有一行 Cannot load C:/php/php8apache2_4.dll into server。
-
LoadModule php_module "C:/php/php8apache2_4.dll"—— 路径必须用正斜杠/,不能用反斜杠\;DLL 文件名要和你 PHP 版本严格对应(如 PHP 8.2 就是php82apache2_4.dll) -
AddHandler application/x-httpd-php .php—— 这行不能漏,否则.php文件当纯文本返回 -
PHPIniDir "C:/php"—— 必须指向含php.ini的目录,不是php.exe所在目录;如果php.ini放在C:/php/conf/,这里就得写"C:/php/conf"
php.ini 里最容易忽略的三个启用项
很多新手以为改了 extension_dir 就万事大吉,结果 mysqli_connect() 报 Call to undefined function。
-
extension_dir = "C:/php/ext"—— 路径末尾不能带斜杠,多了会加载失败 - 取消注释这四行(按需):
extension=mysqli、extension=pdo_mysql、extension=openssl、extension=curl;注意不是extension=php_mysqli.dll,新版 PHP 已去前缀 -
date.timezone = Asia/Shanghai—— 不设时区,strtotime()等函数返回false,且错误日志里不报明显提示
为什么 localhost 能打开但 PHP 文件不解析
常见现象:浏览器访问 http://localhost 显示 “It works!”,但放 test.php 进去,页面源码直接暴露 <?php phpinfo(); ?> —— 说明 Apache 没把请求交给 PHP 处理。
- 检查
httpd.conf是否漏了AddType application/x-httpd-php .php(旧版 Apache 需要,新版用AddHandler即可) - 确认
DocumentRoot和<directory></directory>里的路径完全一致,Windows 下大小写不敏感但空格和斜杠方向敏感 - 重启 Apache 一定要用命令行执行
httpd -k restart,别只点 XAMPP 控制面板的 Restart —— 面板有时只 reload 配置,不重载模块 - 查看
C:/Apache24/logs/error.log,比浏览器报错更早暴露PHP Startup: Unable to load dynamic library 'mysqli'这类真实原因
最麻烦的其实是依赖链:VC++ 运行库没装 → Apache 启动失败;php.ini 路径错 → PHP 模块加载失败;extension_dir 里缺 DLL → 函数不存在。每层都得单独验证,不能只看最终页面。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











