WordPress在XAMPP上无法运行,主因是Apache/MySQL服务未真正启动、端口被占、root密码错误、htdocs目录结构错误、wp-config.php配置不当(DB_HOST须为localhost)、PHP扩展(mysqli/mbstring)未启用或浏览器缓存干扰。

WordPress 在 XAMPP 上跑不起来,八成不是 WordPress 本身的问题,而是 httpd.conf 或 php.ini 里几个关键配置没对上,或者 MySQL 服务根本没启动。
确认 Apache 和 MySQL 服务已真正运行
XAMPP 控制面板上显示 “Running” 不代表服务就绪——Apache 可能监听了错误端口,MySQL 可能因端口冲突或 root 密码不匹配而静默失败。
- 打开命令行,执行
netstat -ano | findstr :80(Windows)或lsof -i :80(macOS/Linux),确认 80 端口是否被httpd.exe占用;若被 Skype、IIS 或其他程序占了,得先关掉它们 - 在 XAMPP 控制面板点击
Shell按钮,输入mysql -u root -p,直接回车(默认空密码)。如果报错Access denied for user 'root'@'localhost',说明 root 密码被改过,需重置或改用新密码登录 - 检查
htdocs目录权限:确保 WordPress 解压后的文件夹(如wordpress)是完整可读的,不要保留.zip后缀或嵌套多层目录
正确解压并放置 WordPress 文件到 htdocs
很多人把整个 wordpress-6.5.3-zh_CN.zip 直接丢进 htdocs,或者解压后还留着 wordpress-6.5.3-zh_CN/ 这层文件夹,导致访问 http://localhost/wordpress 时 403 或 404。
生产级WordPress REST API集成,用于管理文章、页面、媒体、WooCommerce产品、Elementor内容、SEO元数据、ACF及JetEngine字段
- 用解压工具(如 7-Zip、WinRAR)右键 → “解压到当前文件夹”,确保
wp-admin、wp-includes、wp-config.php等文件直接出现在htdocs/wordpress/下,而不是htdocs/wordpress/wordpress-6.5.3-zh_CN/ - 如果想用根域名访问(即
http://localhost),就把 WordPress 文件直接放进htdocs/,覆盖原index.php(XAMPP 默认页可先重命名备份) - 避免中文路径或空格:比如
htdocs/我的网站/或htdocs/wordpress test/,Apache 可能解析失败
手动创建 wp-config.php 并填对数据库参数
安装页面卡在“连接数据库”或提示 Sorry, I can’t write the wp-config.php file.,基本是因为 htdocs/wordpress/ 目录不可写,或你填错了 MySQL 主机名。
- 复制
wp-config-sample.php,重命名为wp-config.php,用 VS Code 或 Notepad++ 编辑(别用记事本,编码易出错) -
DB_NAME填wordpress(或其他你喜欢的库名,但要先在 phpMyAdmin 里手动建好);DB_USER是root;DB_PASSWORD默认留空(除非你改过);DB_HOST必须是localhost,不能填127.0.0.1(XAMPP 的 MySQL 默认只认localhost) - 加两行防止调试泄露:
define('WP_DEBUG', false);<br>define('FS_METHOD', 'direct');前者关掉错误输出,后者让插件更新免输 FTP 凭据
访问安装页面前务必检查 PHP 扩展是否启用
白屏、Fatal error: Call to undefined function mysqli_connect()、或安装页加载一半就中断,大概率是 mysqli 或 mbstring 扩展没开。
- 打开
php.ini(路径通常是xampp/php/php.ini),搜索;extension=mysqli和;extension=mbstring,删掉前面的分号;,保存后重启 Apache - 新建一个
info.php放进htdocs,内容为<?php phpinfo(); ?>,访问http://localhost/info.php,搜索mysqli和mbstring,确认状态是enabled - PHP 版本建议用 XAMPP 自带的 8.2.x 或 8.1.x;WordPress 6.5+ 对 PHP 8.0+ 有明确支持,但某些老插件在 PHP 8.3 上会报
Deprecated警告,不影响运行,但看着烦
最常被跳过的一步:改完 wp-config.php 后没清浏览器缓存,或开着代理/广告过滤插件拦截了 install.php 的 POST 请求——换隐身窗口或换个浏览器再试,比反复重装快得多。

















