V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
CSGO
V2EX  ›  问与答

小白求问 GitHub 那个 page 域名解析问题

  •  
  •   CSGO · 2019-04-25 22:17:58 +08:00 · 2020 次点击
    这是一个创建于 2057 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚刚发现,GitHub 那个可以用 A 记录了,这表明不会和我的域名邮箱冲突了,我可以用上没有加 www 的域名。

    那么问题来了,我在阿里云解析“默认线路”用的“ A ”,用的“@”,是解析到我的腾讯云上的服务器 ip 地址。

    然后用“境外”、“ A 记录”、“@”解析到了 GitHub 帮助里提供的:185.199.111.153 。

    那么,如何才能实现用户输入 www.example.com ,也能对应大陆地区跳转腾讯云,境外跳转 GitHub 上?

    第 1 条附言  ·  2019-04-26 10:59:02 +08:00
    谢谢大家!已经解决了,反正我是看懂了。谢谢 @iasuna,只要 A 记录“境外”设置“@”和“ www ”都指向 GitHub ip 地址即可。
    然后腾讯云上是 iis 8.5,安装上那个 http 重定向,建立一个空文件夹,绑定 www 域名,再在重定向里指向没有 www 的即可。

    现在测试用 ss 全局,不管有没 www 都能转到 github 上;
    关闭 ss,不管有没 www 都能转到腾讯上。
    9 条回复    2019-04-26 08:58:56 +08:00
    CSGO
        1
    CSGO  
    OP
       2019-04-25 22:38:03 +08:00
    看了一些网站,比如 google,访问不带 www 自动跳转有 www ;
    dribbble 则是相反,不知道这个 www 和没有 www 到底哪个更好。
    dog
        2
    dog  
       2019-04-26 00:18:26 +08:00
    @CSGO 看个人喜好,无论选哪个,最好做跳转都指向一个
    geelaw
        3
    geelaw  
       2019-04-26 01:12:55 +08:00 via iPhone
    令 www 的 CNAME 等于 example.com ,然后腾讯云令 www 跳转为无 www。没有 www 是最近的潮流。
    iasuna
        4
    iasuna  
       2019-04-26 01:18:44 +08:00 via iPhone
    把 www 设置和 @一样的解析记录就行 GitHub 默认会将 www.example.com 指向 example.com

    另外 GitHub pages 本来就可以用 a 记录啊 都用了很多年了
    imningfeng
        5
    imningfeng  
       2019-04-26 01:26:41 +08:00
    感觉楼上都没有好好审题,楼主的需求明显是类似 “ DNS 负载分流”。
    国内用户访问,跳转到腾讯云
    国外用户访问,跳转到 Github
    两个服务都是部署一样的网站内容和数据库
    iasuna
        6
    iasuna  
       2019-04-26 02:01:13 +08:00 via iPhone
    @imningfeng
    你没好好审题吧

    楼主说 example dot com 已经搞好了 想把 www dot example dot com 做一样的操作
    KasuganoSoras
        7
    KasuganoSoras  
       2019-04-26 02:26:27 +08:00
    你的意思是,用户访问 www.example.com 自动跳转 example.com ,同时又可以根据不同地区解析到不同 IP 对吧?
    以下有两个方案,可以参考一下

    一、通过你的腾讯云进行跳转
    首先在腾讯云上建立一个虚拟主机,绑定域名 www.example.com ,设定规则:将所有请求 301 或 302 重定向到 example.com
    Nginx 设置示例:

    if ($host != example.com) { return 301 $scheme://example.com$request_uri; }

    然后设置解析:

    类型:A 记录
    主机名:www
    记录值:你的腾讯云 IP

    这样就可以让用户访问 www.example.com 自动跳转 example.com 了,这个方法的好处是只需要一个域名,缺点是所有用户在访问 www 时都会请求到腾讯云。

    二、利用 Cloudflare 的 Page Rules
    此方法需要你准备另一个域名,可以去搞一个 .tk 的免费域名,此处以 test.com 作为示例
    注意:另一个域名( test.com )必须使用万网等支持 A 记录负载均衡的解析服务
    首先将你的主域名 example.com 接入到 Cloudflare,具体方法可以百度,然后添加一个解析:

    类型:CNAME 记录
    主机名:@
    记录值:dns.test.com
    记得把黄色的云点成灰色,关闭 Cloudflare 提供的 CDN 功能

    接着在 Cloudflare 的 Page Rules 页面,添加一个新的 Rule,按照如下格式填写,将 example.com 换成你的域名

    (新浪图床限制了外链,图看不到的话右键复制链接在新标签页打开)

    最后一步,为 test.com 添加两个解析

    类型:A 记录
    主机名:dns
    记录值:185.199.111.153
    ----------
    类型:A 记录
    主机名:dns
    记录值:你的腾讯云 IP

    就可以了,此方法会让用户访问 www.example.com 时走 Cloudflare 进行跳转,缺点是需要两个域名(因为 Cloudflare 不支持 A 记录负载均衡,所以你需要另一个域名,使用支持 A 记录负载均衡的解析服务)
    baobao1270
        8
    baobao1270  
       2019-04-26 07:22:21 +08:00 via Android
    不知道你腾讯云服务器是做什么的,如果是提供反向代理,直接在服务器上反代两个域名( www 和 @)即可

    www CNAME 记录设置为 @即可
    qiayue
        9
    qiayue  
       2019-04-26 08:58:56 +08:00 via Android
    楼主问了两个问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5083 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 122ms · UTC 08:36 · PVG 16:36 · LAX 00:36 · JFK 03:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.