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

Nginx配置异常:子域名app.zerp.io被重定向至主域名zerp.io

问题分析与解决建议

1. 修复Nginx配置拼写错误

你的配置文件中存在明显拼写错误:proxy_ser_header host $host; 应为 proxy_set_header Host $host;。这个错误会导致后端服务无法正确识别请求的Host头,可能触发错误的重定向逻辑。

修改后执行以下命令验证配置并重启Nginx:

sudo nginx -t && sudo systemctl reload nginx

2. 排查主域名HSTS配置

如果主域名zerp.io的Nginx配置中设置了Strict-Transport-Security(HSTS)头且包含includeSubDomains参数,浏览器会强制所有子域名(包括app.zerp.io)使用HTTPS。即使子域名没有SSL证书,浏览器也会自动发起重定向,最终可能被路由到主域名的HTTPS地址。

检查zerp.io的Nginx配置,查看是否存在类似配置:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";

若存在includeSubDomains,可暂时移除该参数,直到app.zerp.io配置好SSL证书(HSTS是浏览器端强制规则,用户浏览器需要一段时间才能失效,可通过清除浏览器HSTS缓存加速测试)。

3. 检查Nginx全局与其他站点配置

  • 查看/etc/nginx/nginx.conf全局配置,确认无默认重定向规则
  • 检查/etc/nginx/sites-enabled/目录,确保仅存在app.zerp.io和zerp.io的配置链接,无残留默认配置
  • 执行nginx -T查看所有生效配置,搜索是否存在针对app.zerp.io的隐藏重定向规则

4. 验证React应用内部重定向逻辑

  • 检查package.json中的homepage字段,确认未错误设置为zerp.io
  • 查看React路由配置,确认无全局重定向到主域名的规则
  • 若使用开发服务器(npm start),检查是否设置了HOST或PUBLIC_URL环境变量指向主域名

5. 确认DNS解析与缓存

  • 在本地执行nslookup app.zerp.io或dig app.zerp.io,验证返回IP为目标服务器公网IP
  • 更换本地DNS服务器(如8.8.8.8或1.1.1.1)测试是否仍存在重定向
  • 检查域名服务商后台,确认无默认子域名重定向到主域名的规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 08:45:29