You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx子域名下WordPress 80端口无法访问但普通PHP正常

问题分析与解决方案
  • 核心原因:WordPress自身的站点URL配置导致重定向
    你之前用8085端口搭建站点时,WordPress已经把带端口的地址(比如http://doc.mydomain.com:8085)写入了数据库的wp_options表(表前缀如果不是wp_就对应你的自定义前缀),具体是siteurl和home这两个字段。当你把Nginx切换到80端口后,访问不带端口的地址时,WordPress检测到当前访问地址和数据库里存储的“官方地址”不一致,就会自动发送301重定向到它认为正确的带端口地址。而普通的phpinfo()脚本只是单纯输出PHP环境信息,根本不会读取WordPress的数据库配置,自然不会触发这个重定向逻辑。

  • 解决方法

    1. 直接修改数据库
      登录数据库管理工具(比如phpMyAdmin),找到WordPress对应的数据库,打开wp_options表,定位option_name为siteurl和home的两条记录,把option_value修改为不带端口的地址http://doc.mydomain.com。
    2. 通过配置文件临时覆盖
      如果暂时无法操作数据库,可以在WordPress根目录的wp-config.php中添加以下代码,强制指定站点URL(添加在/* That's all, stop editing! Happy publishing. */这行之前即可):
      define('WP_HOME','http://doc.mydomain.com');
      define('WP_SITEURL','http://doc.mydomain.com');
      
  • 额外注意事项
    修复配置后记得清理浏览器缓存,因为301重定向会被浏览器缓存,旧缓存可能会导致依然出现跳转问题。同时检查Nginx配置文件,确保没有额外的重定向规则干扰正常访问。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 15:50:40