核心是路径正确、模块加载准确、服务协同工作:配置apache启动并支持php解析,安装php并启用mysqli等关键扩展,安装mysql并创建本地用户与数据库,三者通过正确路径和配置实现闭环通信。

不用WAMP、XAMPP这类集成包,自己配Apache+PHP+MySQL,核心就三件事:路径对得上、模块加载对、服务能串起来。不是为了炫技,而是当网站上线后出问题——比如上传卡住、后台500、插件连不上数据库——你能直接定位到是php.ini里upload_max_filesize没调,还是httpd.conf里LoadModule指向了旧版DLL,又或是MySQL的bind-address锁死了本地连接。下面按真实部署顺序讲清楚关键动作。
Apache:先跑通服务,再绑定PHP
Windows下解压Apache后,必须改三处配置才能启动成功:
-
ServerRoot:在
httpd.conf开头找到Define SRVROOT,填绝对路径,比如Define SRVROOT "C:/Apache",不能带中文或空格 -
DocumentRoot
:两个地方要同步改,指向你打算放网站文件的目录,例如 DocumentRoot "D:/www"和<directory></directory> -
默认首页支持PHP:搜索
DirectoryIndex,把index.php加进去,变成DirectoryIndex index.html index.php
启动前用httpd -t校验语法,提示Syntax OK再运行httpd -k install安装服务。浏览器访问localhost看到It works!,说明Apache已就位。
PHP:选对版本,配好扩展路径
Windows必须选Thread Safe版PHP(如php-8.2.12-Win32-vs16-x64.zip),解压后做三件事:
- 复制
php.ini-development重命名为php.ini - 改
extension_dir为绝对路径,例如extension_dir = "C:/php/ext"(注意斜杠方向) - 取消注释关键扩展:
extension=php_mysqli.dll、extension=php_pdo_mysql.dll、extension=php_opcache.dll,缺一不可
别忘了设时区:date.timezone = Asia/Shanghai。保存后命令行执行php -v和php --modules,确认版本和扩展都正常加载。
Apache与PHP联动:靠LoadModule和Handler
在httpd.conf末尾添加以下内容(路径和DLL名需严格匹配你PHP版本):
-
LoadModule php_module "C:/php/php8apache2_4.dll"(Apache 2.4对应php8apache2_4.dll,别用错) PHPIniDir "C:/php"AddType application/x-httpd-php .php<filesmatch> SetHandler application/x-httpd-php </filesmatch>
重启Apache,创建D:/www/phpinfo.php,内容为<?php phpinfo(); ?>。访问http://localhost/phpinfo.php,页面顶部显示PHP版本,且“Loaded Configuration File”指向你刚改的php.ini,说明PHP已真正接管请求。
MySQL:本地连接必须开权限
安装MySQL后,运行mysql_secure_installation设root密码、删匿名用户、禁远程root登录——这是生产环境底线。
- 编辑
my.ini(通常在MySQL安装根目录),确认bind-address = 127.0.0.1(不是0.0.0.0) - 进MySQL命令行,执行:
CREATE DATABASE mysite DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - 再执行:
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'strong_password';和GRANT ALL ON mysite.* TO 'wpuser'@'localhost'; FLUSH PRIVILEGES;
这时用PHP写个简单连接测试($mysqli = new mysqli('localhost', 'wpuser', 'strong_password', 'mysite');),不报错才算MySQL真正可用。Apache、PHP、MySQL三者此时已形成闭环,后续WordPress安装、插件启用、缓存配置,都有了可靠基础。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











