WordPress 在 XAMPP 上运行需三步调优:一、启用 Apache rewrite_module 并设 AllowOverride All;二、MySQL root 用户权限全开且 wp-config.php 中 DB_HOST 用 localhost、空密码写为 '';三、PHP 启用 mysqli/curl/mbstring/xml 扩展并调大上传限制,安装后须在固定链接页保存一次以生成 .htaccess。

WordPress 能在 XAMPP 上跑起来,但默认配置下大概率会出错——不是数据库连不上,就是后台重定向循环,或者上传文件失败。核心问题不在 WordPress 本身,而在 Apache、PHP 和 MySQL 三者与 WordPress 的协同细节没对齐。
Apache 必须启用 rewrite_module 且 .htaccess 生效
WordPress 后台固定链接、插件重写规则全靠 Apache 的 mod_rewrite。XAMPP 默认是关闭这个模块的,而且 .htaccess 文件即使存在也不会被读取。
- 打开
httpd.conf(路径通常是C:\xampp\apache\conf\httpd.conf),找到#LoadModule rewrite_module modules/mod_rewrite.so,删掉开头的# - 再找
<directory></directory>这一段,在其内部把AllowOverride None改成AllowOverride All - 改完必须重启 Apache,否则无效;验证方式:在 htdocs 下放一个带
RewriteRule的.htaccess,访问时返回 500 才说明生效了
MySQL 用户权限和 wp-config.php 配置要严格匹配
XAMPP 自带的 MySQL 默认用 root 用户且密码为空,但 WordPress 安装向导有时会误判空密码为“连接拒绝”,尤其 PHP 8.0+ 版本对空密码更敏感。
- 进 phpMyAdmin(
http://localhost/phpmyadmin),点「用户账户」→「编辑权限」→ 找到root@localhost→「编辑权限」→ 确保「全局权限」全勾选,密码留空也行,但「使用密码登录」选项必须设为「否」 -
wp-config.php中的DB_HOST别写127.0.0.1,统一用localhost;DB_PASSWORD如果为空,就写''(两个单引号),别留空白字符串或注释掉 - 如果安装时卡在「连接数据库」,临时在
wp-config.php加一行:define('WP_DEBUG', true);,错误信息会暴露真实原因(比如 mysqli 扩展未启用)
PHP 扩展和上传限制直接影响后台功能
WordPress 后台媒体上传、插件安装、自动更新这些操作,依赖 mysqli、curl、mbstring、xml 等扩展;而 XAMPP 默认只开了一半。
- 打开
php.ini(C:\xampp\php\php.ini),确认以下行前面没有分号:extension=mysqli、extension=curl、extension=mbstring、extension=xml - 调大上传限制:
upload_max_filesize = 64M、post_max_size = 100M、max_execution_time = 300,否则上传主题或备份文件会超时或截断 - 改完重启 Apache;验证方法:新建
info.php放在 htdocs 下,内容为<?php phpinfo(); ?>,浏览器访问,搜索「mysqli」确认状态是「enabled」
最常被跳过的一步:WordPress 安装完成后,立刻进后台「设置 → 固定链接」点一次「保存更改」——这会强制生成正确的 .htaccess 规则。不点这一下,首页能打开,但点击文章或分类页 404 是必然的。


















