You need to enable JavaScript to run this app. Docker部署双WordPress共享MySQL 访问9000端口自动跳转8000问题
优惠活动
大模型
产品
解决方案
定价
更多

Docker部署双WordPress共享MySQL 访问9000端口自动跳转8000问题

问题根本原因

你部署的两个WordPress容器共用了同一个MySQL数据库,且没有配置独立的表前缀,两个站点会读取同一份wp_options表配置:

  • 优先启动的8000端口WordPress在初始化安装时,已经将站点根地址siteurl和首页地址home两个配置项写入数据库,默认值为http://localhost:8000
  • 9000端口的WordPress读取到这份写死的8000端口配置后,会自动执行WordPress内置的canonical重定向逻辑,将所有访问跳转到配置的站点地址

解决方案

根据使用需求可选择以下任意一种方案:

方案1:搭建两个完全独立的WordPress站点

两种实现方式二选一:

  • 为第二个WordPress创建独立的数据库,修改second_wordpress的数据库连接配置指向新库
  • 共用现有数据库的情况下,给第二个WordPress配置独立的表前缀,在second_wordpress的environment配置块下新增参数:
WORDPRESS_TABLE_PREFIX: wp2_

修改后重启容器,9000端口的WordPress会自动初始化新前缀的独立表,不会和8000端口的站点共用配置。

方案2:两个站点共用内容,支持多端口访问

如果需要两个端口访问的是同一份站点内容,可在两个WordPress的environment配置块中都新增动态地址配置,覆盖数据库中的写死配置:

WORDPRESS_CONFIG_EXTRA: |
  define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
  define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);

修改后重启容器即可,WordPress会自动适配当前访问的域名和端口,不会强制跳转到固定地址。

内容的提问来源于stack exchange,提问作者ben shalev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 02:15:04