必须在wp-config.php中添加define('wp_allow_multisite', true);才能启用多站点,随后停用所有插件、正确配置httpd-vhosts.conf(含allowoverride all)、替换wordpress生成的.htaccess规则,缺一不可。

直接改 wp-config.php 开启多站点开关
WordPress 多站点模式默认是关闭的,必须手动启用。不改这一步,后台根本不会出现「配置网络」入口。
在 WordPress 根目录打开 wp-config.php,找到 /* That's all, stop editing! */ 这行之前的位置,插入:
define('WP_ALLOW_MULTISITE', true);
注意:不要放在注释块里,也不要加多余空格或引号错误;如果文件已存在其他 define(比如 DB_NAME),就紧挨着它们写,保持语法干净。
常见错误现象:
– 后台「工具」菜单里没有「配置网络」选项
– 刷新后仍提示“您不能在此站点上创建站点”
– 修改后访问后台 500 错误 → 检查是否漏了分号、用了中文标点、或插在了 PHP 关闭标签 ?> 之后
子目录模式下必须停用所有插件再进「配置网络」
子目录多站点(SUBDOMAIN_INSTALL 设为 false)对插件兼容性敏感。哪怕只开着一个缓存插件,也可能导致「配置网络」页面空白、提交后跳转失败或生成的 .htaccess 规则不完整。
操作前请确认:
– 登录后台 → 「插件」→ 全部设为「停用」(不是删除)
– 不要跳过这步直接点「配置网络」
– 如果你用的是本地开发环境(如 XAMPP),某些安全类插件会拦截重写规则,造成后续子站 404
完成网络启用后,再逐个启用插件测试兼容性——很多插件需单独开启「多站点支持」开关,或更新到最新版才适配。
httpd-vhosts.conf 配置必须匹配子目录路径结构
XAMPP 默认只监听 localhost,但多站点子目录(如 http://localhost/site2)依赖 Apache 正确识别请求路径。如果没配好虚拟主机,子站后台可能加载空白 CSS/JS,或前台报 404。
修改 C:\xampp\apache\conf\extra\httpd-vhosts.conf,追加以下内容(假设你的主站放在 htdocs/wordpress):
<virtualhost>
DocumentRoot "C:/xampp/htdocs/wordpress"
ServerName localhost
<directory>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</directory></virtualhost>
关键点:
– AllowOverride All 必须开启,否则 WordPress 的 .htaccess 重写规则无效
– 路径中的斜杠统一用正斜杠 /,Windows 下反斜杠 \ 会导致 Apache 启动失败
– 修改后务必重启 Apache,否则配置不生效
验证方式:在浏览器访问 http://localhost/wordpress/wp-admin,能正常进后台即说明路径解析正确。
启用后必须手动替换 .htaccess,且不能保留旧规则
「配置网络」成功后,WordPress 会提供一段专属的重写规则,它和单站模式的规则完全不兼容。直接覆盖,别合并、别注释、别删行。
操作步骤:
– 进入网站根目录(如 C:\xampp\htdocs\wordpress)
– 找到或新建 .htaccess 文件(Windows 下需用编辑器另存为,确保无 .txt 后缀)
– 全选粘贴 WordPress 后台给出的规则(不是你凭记忆写的,也不是网上搜的通用版)
– 保存后检查文件编码为 UTF-8 无 BOM
容易被忽略的地方:
– XAMPP 默认禁用 mod_rewrite,需确认 C:\xampp\apache\conf\httpd.conf 中这行已取消注释:LoadModule rewrite_module modules/mod_rewrite.so
– 如果子站首页能打开但后台链接全部跳 404,90% 是 .htaccess 没生效或规则错位
– 子目录多站点无法使用「固定链接」里的「文章名」格式,除非 .htaccess 完全按后台生成的来











