V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ericgui
V2EX  ›  程序员

请教一个 Nginx 重定向的问题:一台机器配置 2 个二级域名,导致重定向混乱

  •  
  •   ericgui · 2017-11-18 12:31:15 +08:00 · 2948 次点击
    这是一个创建于 2547 天前的主题,其中的信息可能已经有所发展或是发生改变。
    首先请看这个代码:

    # Redirect non-https traffic to https
    if ($scheme != "https") {
    return 301 https://$host$request_uri;
    } # managed by Certbot


    这是照抄左耳朵耗子的博客上的代码

    我目前是一台机器上配置 2 个二级域名,上面这个是 a.website.com ,那么就是 https://a.website.com
    如果直接输入 a.website.com 会自动重定向到 https://a.website.com

    b.website.com(同一个域名,不同的二级域名),没有配置 https,直接打开 b.website.com ,没问题,
    但如果打开 https://b.website.com ,竟然会重定向到 a.website.com

    非常邪门

    google 都不知道用什么关键词查询

    特此请教
    9 条回复    2017-11-20 00:27:42 +08:00
    zlfzy
        1
    zlfzy  
       2017-11-18 12:35:55 +08:00 via iPhone   ❤️ 1
    你另外弄一份 https://b.website.com/的 conf 文件监听 443 端口,不用 301
    just1
        2
    just1  
       2017-11-18 12:38:49 +08:00 via Android
    因为 b 没有配置 https,nginx 会使用默认 https 站点的配置(就是 a )
    ericgui
        3
    ericgui  
    OP
       2017-11-18 13:06:54 +08:00
    @zlfzy 哦,端口是 443,但其他配置是一样的,最后还是打开了 http 而已,对吧?是这意思么
    zlfzy
        4
    zlfzy  
       2017-11-18 13:08:20 +08:00
    @ericgui 要不你试试再加这一段,return 301 http://$host$request_uri; 看看能不能把 https 强制跳转 http
    yangg
        5
    yangg  
       2017-11-18 14:25:26 +08:00
    正常情况,https 不存在会走第一个,lz 解决了告诉下我
    ericgui
        6
    ericgui  
    OP
       2017-11-19 05:53:38 +08:00
    @yangg 没解决。。。。哎。。。。
    ericgui
        7
    ericgui  
    OP
       2017-11-19 05:54:02 +08:00
    @zlfzy 你这个方法是网上的,我试了,结果 https 就打不开了
    dorothyREN
        8
    dorothyREN  
       2017-11-19 16:46:07 +08:00
    配置不对,找不到对应的域名的话会直接转到默认主机。
    blless
        9
    blless  
       2017-11-20 00:27:42 +08:00
    301 没记错是永久重定向,浏览器貌似会缓存这个记录,当下次打开的时候 浏览器其实并没有真正请求到你的后端,而是因为你最近请求过这个站点,所以浏览器直接把缓存的记录给你了。建议每次测试开隐身窗口测试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   933 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 21:48 · PVG 05:48 · LAX 13:48 · JFK 16:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.