amh+正常nginx + 反代nginx + CNAME ,域名无法绑定,乱窜是怎么回事?

新手上路,请多包涵

需求

  • 要求将b.com指向b.a.com,可正常使用https
  • 要求将c.com指向c.a.com,可https
  • 现在c.com可以正常访问,但b.com会被转到c.com

环境:

腾讯云 debian 11 x64
amh 7.0
图片.png

除了nginx之外,后台跑着一个8080端口的java服务


现状

现有域名
    * a.com 、b.a.com 、c.a.com
    * b.com通过CNAME指向 b.a.com 
    * c.com CNAME到 c.a.com
    * 后台java在127.1:8080

lnmp下站点:
   * a.com
   * b.a.com
        b.com CNAME解析到b.a.com
        通过amh面板复制粘贴安装了b.com的https证书

lngx下站点:
  c.a.com 反代127.0.0.1:8080
        c.com 通过CNAME解析到 c.a.com
        通过amh面板复制粘贴安装了c.com的https证书


问题

https://a.com 访问正常
https://c.com 访问正常
https://b.com 访问时会转向到lngx下的c.com

尝试使用沙盒的安全模式,但安全模式里只有lnmp下的站点,没有lngx的
将b.a.com站点设置成安全模式,访问https://b.com依然窜到了c.com

停止lngx下的c.a.com的nginx后,b.com可以正常访问
尝试不使用CNAME,全部使用A记录解析,一切正常

现在因某些因素使用不了A记录,有什么解决办法么?

阅读 1.5k
1 个回答

亲,nginx虚拟主机与沙盒安全模式没关系的,
b.com与c.com的域名是需要在虚拟主机绑定上才行,不只是域名那边解析就可以了。

与你上面所说的指向是跳转还是直接访问显示,
如果是跳转,需要在b.com与c.com所在的虚拟主机使用301规则进行跳转(在规则管理可以添加),如果是直接访问显示,你在目标的虚拟主机绑定上b.com与c.com的域名即可。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题