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

Github Pages 的 DNS 设置问题

  •  
  •   ttgo · 2020-02-03 16:51:41 +08:00 · 2743 次点击
    这是一个创建于 1754 天前的主题,其中的信息可能已经有所发展或是发生改变。

    朋友用 github pages 给所在学校的社团做一个网页,假设申请的域名是 swim.university.edu

    用的大学的域名系统,里面只能设置 CNAME,她设置了个 cname 记录,www.swim.university.edu 指向 xx.github.io 。github 里的 cname 里是 www.swim.university.edu 。这个 www 网址顺利访问,没任何问题。

    然而当然 swim.university.edu 是不能访问的。

    试了在学校 DNS 新建一个 cname 把 swim.univerisity.edu 指向 www.swim.univerisity.edu ,结果是无法访问非 www 域名。

    试了在学校 DNS 新建一个 cname 把 swim.univerisity.edu 指向 xx.github.io ,不行,也无法访问非 www 域名。

    又申请了一个 github 账号,建了一个相同的 github pages 的 repository,然而设置自定义域名 swim.university.edu 的时候说 the cname swim.university.edu is already take.

    这可咋整啊?? 是否可以在现有条件下同时让 www 和非 www 同时可以访问??

    10 条回复    2020-02-04 14:37:20 +08:00
    OllyDebug
        1
    OllyDebug  
       2020-02-03 16:56:28 +08:00 via iPhone
    不能
    Sunyanzi
        2
    Sunyanzi  
       2020-02-03 19:10:06 +08:00
    楼上斩钉截铁的答案是错的 ... 如果要 www 和 non-www 指向同站的不同 repo 确实不可能 ...

    使用同一个 repo 的话毫无疑问的能做到 ... 而且你都不用另申请一个账号 ... 你第一次的操作就是正确的 ...

    我觉得这事情大概率是学校 DNS 的锅 ... 你可以设置完两个 CNAME 之后分别 ping 一下看看通不通 ...
    Rhinecho
        3
    Rhinecho  
       2020-02-03 19:37:52 +08:00 via iPhone
    其实完全可以解析到 ghpages 的 ip 上,有很多 ping 工具可以检测出来
    另一个,如果你绑定的是带 www 的,github 不会帮你加上跟域。如果你绑定的是跟域,同时带 www 的也指向了 ghpages 的 cname 记录或者 ip,那直接访问肯定没问题,带上 www 访问会自动跳转到不带 www 的,但是没有 ssl 证书
    btw,为什么不试试 netlify 或者 zeit now 呢?
    mytsing520
        4
    mytsing520  
       2020-02-03 22:25:03 +08:00
    你尝试在 GitHub 中绑定无 www 的域名看看,假如 GitHub 支持绑定多个域名的话
    gransh
        5
    gransh  
       2020-02-03 23:05:37 +08:00 via iPhone
    估计数学校 DNS 的问题
    ttgo
        6
    ttgo  
    OP
       2020-02-04 08:30:05 +08:00
    @Sunyanzi
    目前的设置是 www 指向 github.io, non-www 指向 www,
    www 可以 ping 通和访问,
    non-www ping 不通,提示 ping: cannot resolve swim.university.edu: Unknown host
    visualbasic
        7
    visualbasic  
       2020-02-04 10:58:42 +08:00 via iPad
    @ttgo www 和 non-www 都指向 github.io ,CNAME 绑定 non-www
    ttgo
        8
    ttgo  
    OP
       2020-02-04 13:10:29 +08:00
    @visualbasic 没明白 能详细说一下嘛?
    www 和 non-www 的 cname ( a record?)指向 github.io 的 ip,然后 cname 绑定 non-www 那是啥意思?
    ncepuzs
        9
    ncepuzs  
       2020-02-04 13:58:19 +08:00
    @ttgo 他的意思是 www 和不带 www 的两个域名都 cname 到 xxx.github.io ,然后 GitHub 里的 CNAME 文件里只填写不带 www 的就行。

    另外,这样的解析方式并不是一个很好的实践,一般采用 301 重定向等。还有,建议问一下学校相关负责人,网站能否托管到校外服务器上,如你所用的 GitHub。
    ttgo
        10
    ttgo  
    OP
       2020-02-04 14:37:20 +08:00
    @ncepuzs
    了解了,多谢!晚上试试。
    为什么说这不是个好的解决方法呢?
    还有就是,https 会不会有问题啊?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2906 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 03:26 · PVG 11:26 · LAX 19:26 · JFK 22:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.