NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
hard2reg
V2EX  ›  NGINX

nginx 配置问题 主域名没站,加 https 访问主域名后返回的是二级域名的主页。

  •  
  •   hard2reg · Apr 18, 2021 · 2283 views
    This topic created in 1849 days ago, the information mentioned may be changed or developed.

    情况如下

    x.com 没有部署站点,没写过配置文件

    二级 sub.x.com 部署了一个站并开启了 https

    访问 http://x.com 正常,没有东西

    访问 https://x.com 返回的是 sub.x.com 的内容,chrome 提示“您的连接不是私密连接”。

    为什么会这样,如何设置才能避免这种情况。

    Supplement 1  ·  Apr 19, 2021
    找到原因了,BT-panel 的特性。。。
    Supplement 2  ·  Apr 19, 2021
    打脸了,不是 bt 特性。。。是 nginx 的特性。
    8 replies    2021-04-19 11:47:19 +08:00
    ik
        1
    ik  
       Apr 18, 2021 via iPhone
    添加一个 https 的 default 页面, 或者判断 host 不是二级域名就跳转至二级域名。

    至于证书的问题可以申请泛域名证书解决
    Yourshell
        2
    Yourshell  
       Apr 18, 2021
    因为 https 尝试链接的的是 443 端口吧,然后你没有限制链接的 hostname
    hard2reg
        3
    hard2reg  
    OP
       Apr 18, 2021
    @ik 非常感谢
    hard2reg
        4
    hard2reg  
    OP
       Apr 18, 2021
    @Yourshell servr_name sub.x.com; 这样不算限制吗,还是说一定要写判断
    hard2reg
        5
    hard2reg  
    OP
       Apr 18, 2021
    @Yourshell 打错了,server_name
    also24
        6
    also24  
       Apr 18, 2021
    @hard2reg
    server_name sub.x.com 是充分条件,不是必要条件

    当你访问不存在的 server_name 的时候,会走默认 vhost,或者第一个 vhost
    eason1874
        7
    eason1874  
       Apr 19, 2021
    不是宝塔特性,Nginx 本身就这样。

    因为你没有配置默认的 443 default_server,所以未配置域名 443 请求过来的时候就会匹配到第一个有效的 443 server block,所以就匹配到了你的 sub 配置。而 sub 配置的证书有效域名没有包含根域名,所以就会提示证书错误。

    防止未配置域名指向,
    http 要配置一个 listen 80 default_server;
    https 要配置一个 listen 443 default_server;
    hard2reg
        8
    hard2reg  
    OP
       Apr 19, 2021
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1070 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 18:48 · PVG 02:48 · LAX 11:48 · JFK 14:48
    ♥ Do have faith in what you're doing.