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

问一个关于 https 和 www 的小白问题

  •  
  •   mahaonan1994 · 2020-11-01 16:36:10 +08:00 · 3167 次点击
    这是一个创建于 1482 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我搜了大半天也不知道怎么解决 /cry 所以只有发帖子问一下大家了 /感谢

    网站开了 https 以后直接用域名可以访问,https://www.域名也可与访问,但是 www.域名和 http://www.域名访问不了,这是为什么呢?

    大佬们可以试一下

    2yuansvip.com
    https://2yuansvip.com
    https://www.2yuansvip.com

    这三种都可以直接访问,甚至 http://2yuansvip.com 也可以直接访问

    但是

    www.2yuansvip.com
    http://www.2yuansvip.com
    会提示没有找到站点
    第 1 条附言  ·  2020-11-01 17:25:57 +08:00
    V2ex 果然是一个有爱的社区,我像个没头苍蝇一样搜了一下午不知道怎么解决的问题,发出来 5 分钟就解决了!
    感谢回复的各位!
    祝大家都能早日暴富!
    22 条回复    2020-11-02 09:40:50 +08:00
    misaka19000
        1
    misaka19000  
       2020-11-01 16:39:49 +08:00   ❤️ 1
    看不到你的配置,基本只能靠猜测来解决
    qiayue
        2
    qiayue  
       2020-11-01 16:46:29 +08:00   ❤️ 1
    请说明环境,用的 Nginx 还是 apache 还是其他?直接自己写的配置文件还是用的类似于宝塔的控制面板?
    你只说了现象,没有提配置,靠猜给你答案太难
    imdong
        3
    imdong  
       2020-11-01 16:51:11 +08:00   ❤️ 1
    众所周知,http 和 https 是两个不同的网站,www.xxx.comxxx.com 是两个不同的网站。

    所以,你要想让这四个网站一样,就需要在 Nginx 都绑定这几个域名。

    参考如下配置

    server {
    listen 80;
    listen 443 ssl http2;
    server_name www.qs5.org qs5.org;
    ...
    # enable SSL
    ...

    # 不带 www 时跳转
    if ($http_host !~ "^www.qs5.org$") {
    rewrite ^(.*) https://www.qs5.org$1 permanent;
    }

    # 强制 https
    error_page 497 https://$host$uri?$args;
    }

    以上代码仅供参考,不提供后续技术支持,以及造成任何后果自行承担。

    强制 HTTPS 有很多方法,这个方法也不见得可靠,没测试。

    PS:举🌰时请不要向我学习使用 xxx 作为域名。
    mahaonan1994
        4
    mahaonan1994  
    OP
       2020-11-01 16:51:13 +08:00 via Android
    @misaka19000
    @qiayue
    Nginx+宝塔
    我不知道和哪些配置有关😂完全不懂
    paragon
        5
    paragon  
       2020-11-01 16:51:22 +08:00   ❤️ 1
    先看 80 端口开了没 再看做没做 301~
    hendyzone
        6
    hendyzone  
       2020-11-01 16:52:08 +08:00   ❤️ 1
    没看到配置
    盲猜是没配置 请求 www 的 http 重定向到 https 的逻辑
    mahaonan1994
        7
    mahaonan1994  
    OP
       2020-11-01 16:53:31 +08:00 via Android
    @imdong 我一直以为 xxx.comwww.xxx.com 是一个网站的😂
    lqw3030
        8
    lqw3030  
       2020-11-01 16:57:39 +08:00   ❤️ 1
    二级域名服务商可以做特定解析,然后服务器也可以做 301 重定向
    hendyzone
        9
    hendyzone  
       2020-11-01 16:59:44 +08:00   ❤️ 2
    @mahaonan1994
    我是用 certbot-auto --nginx 自动生成的配置 你可以参考一下
    server {
    if ($host = www.xxx.com) {
    return 301 https://$host$request_uri;
    }


    if ($host = xxx.com) {
    return 301 https://$host$request_uri;
    }


    server_name www.xxx.com xxx.com;
    listen 80;
    return 404;

    }
    mahaonan1994
        10
    mahaonan1994  
    OP
       2020-11-01 17:01:45 +08:00 via Android
    @lqw3030 我已经在解析记录里添加了*和 www 的 A 记录了,但还是不行 /cry
    mahaonan1994
        11
    mahaonan1994  
    OP
       2020-11-01 17:03:10 +08:00 via Android
    @hendyzone 感谢🙏
    @imdong 感谢🙏
    我试一下
    mahaonan1994
        12
    mahaonan1994  
    OP
       2020-11-01 17:11:08 +08:00
    @hendyzone 感谢大佬!用了你的配置可以了!!!
    祝早日暴富!
    RickyC
        13
    RickyC  
       2020-11-01 17:19:53 +08:00   ❤️ 1
    @mahaonan1994

    1. 现在我这边访问 http://www.2yuansvip.com 是可以访问的, 并且跳转到 https://2yuansvip.com
    2. 如果您希望用 http://www.2yuansvip.com 直接访问您的网站, 您可以:
    a.将 域名的 www 记录以 A 记录指向您的服务器 IP
    b.在您的宝塔面板的“2yuansvip.com 网站”里添加一个域名, 就是 www.2yuansvip.com
    mahaonan1994
        14
    mahaonan1994  
    OP
       2020-11-01 17:22:58 +08:00
    @RickyC 感谢回复!
    我用了楼上 hendyzone 大佬给的配置重新设置过了,所以现在能直接访问,之前是会报错的
    EKkoGG
        15
    EKkoGG  
       2020-11-01 17:30:24 +08:00   ❤️ 1
    只要态度好,不是伸手党,大家还是很欢迎问问题的~
    fugu37
        16
    fugu37  
       2020-11-01 17:45:37 +08:00   ❤️ 1
    #2 的警告是有意义的。

    请不要使用 作为例子
    rekulas
        17
    rekulas  
       2020-11-01 22:11:59 +08:00
    对 请不要用 xxx 做例子
    Elissa
        18
    Elissa  
       2020-11-02 00:46:21 +08:00
    艹,开展代理,xxx 直接点进去了,还好没人
    madpecker009
        19
    madpecker009  
       2020-11-02 08:55:15 +08:00
    @Elissa 所以说是啥网站。。。。
    SuperManNoPain
        20
    SuperManNoPain  
       2020-11-02 09:20:23 +08:00
    @madpecker009 ghs 的网站 -.-
    madpecker009
        21
    madpecker009  
       2020-11-02 09:33:52 +08:00
    @SuperManNoPain 我觉得我可以去试试
    ryanlid
        22
    ryanlid  
       2020-11-02 09:40:50 +08:00
    请使用 example.com 举例
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2947 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 11:06 · PVG 19:06 · LAX 03:06 · JFK 06:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.