Nginx访问WordPress子域名站点强制跳转至非预期端口4323故障求解
故障根因判断
你已经排除了Nginx配置、浏览器缓存、端口转发层面的问题,且非WordPress的子域名站点访问完全正常,问题100%出在WordPress自身的站点配置上:WordPress初始化安装时会将站点根URL固定写入数据库,你前期本地测试用4323端口运行,安装时填写的站点地址是带4323端口的,后续更换端口和域名后没有修改这个配置,就会触发WP自带的强制跳转逻辑。
解决步骤
方式一:修改wp-config.php配置(优先推荐,不需要登录后台/操作数据库)
- 进入WordPress站点的根目录,也就是你配置里的
/var/www/wp.mysite.co.uk路径 - 编辑
wp-config.php文件,在/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */这行之前添加以下两行代码:
define('WP_HOME', 'http://test.mysite.co.uk'); define('WP_SITEURL', 'http://test.mysite.co.uk');
- 保存文件后清空浏览器缓存,再次访问子域名即可恢复正常。这种方式优先级最高,会直接覆盖数据库里的配置值。
方式二:修改数据库配置
如果你不想改wp-config.php,可以直接操作数据库修改对应字段:
- 登录你的WordPress使用的MySQL/MariaDB数据库
- 找到对应站点的
wp_options表(表前缀可能和你安装时设置的不一样,不一定是wp_) - 修改
option_name为siteurl和home对应的option_value值,改为http://test.mysite.co.uk即可
额外问题说明
你提到访问树莓派本地IP的80端口返回Apache默认页,说明你的树莓派上同时运行了Apache服务和Nginx服务,Apache优先占用了80端口的默认请求匹配。如果不需要使用Apache可以直接执行sudo systemctl stop apache2 && sudo systemctl disable apache2关闭即可,避免后续出现端口冲突问题。
内容的提问来源于stack exchange,提问作者user8758206
相关产品推荐
相关产品推荐

