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

怎么让自己的根域名生成多个子域名?

  •  
  •   findex · 2016-09-07 01:04:15 +08:00 · 8007 次点击
    这是一个创建于 2990 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如自己有个域名 helloblog.com 想让博客注册者用其他的域名 tom.helloblog.comlily.helloblog.com

    这个估计得用 DNS 服务器,怎么和所注册的用户打通实现?

    让博客有子域名给注册用户,意义所在?

    21 条回复    2016-09-08 09:48:24 +08:00
    int64ago
        1
    int64ago  
       2016-09-07 01:12:16 +08:00
    自己搞 NS 服务器
    int64ago
        2
    int64ago  
       2016-09-07 01:15:41 +08:00
    看了下, CloudXNS 就支持泛解析,那还不好办吗
    moonfly
        3
    moonfly  
       2016-09-07 01:19:31 +08:00
    同意楼上,应该就是 DNS 做 *.helloblog.com 的泛解析;
    然后本地的程序提取用户所请求的 ServerName 提取对应的用户名,显示对应的内容!
    shiji
        4
    shiji  
       2016-09-07 01:21:02 +08:00
    比如自己有个域名 helloblog.com 想让博客注册者用其他的域名 tom.helloblog.comlily.helloblog.com

    你不能解释一下这句话?是你有一个博客网站,想给每个注册的用户分配一个子域名用于显示他们的用户信息或者他们的投稿?[一个网站多个作者]
    还是
    想像注册新浪网易博客那样,给每个注册用户一个子域名和完全独立的博客[多个网站,每个网站一个作者]
    还是纯粹的给每个注册你网站的用户白送一个子域名,允许他们自己设定子域名的 DNS ,可以指向任何 IP ?[纯粹送子域名]
    xjp
        5
    xjp  
       2016-09-07 01:32:00 +08:00 via iPhone   ❤️ 12
    不用那么复杂

    1. 域名泛解析 把*.helloblog.com 解析到一台服务器上

    2. 在这台服务器上做转发 例如吧 xjp.helloblog.com/ 转发到 www.helloblog.com/xjp/ 下 nginx 一行配置就可以做到了 这样用户访问 xjp.helloblog.com 其实就是做在访问 www.helloblog.com/xjp
    dallaslu
        6
    dallaslu  
       2016-09-07 01:49:56 +08:00
    设置泛解析,然后可以用像 WordPress 一样支持多站点的博客程序。
    Tink
        7
    Tink  
       2016-09-07 01:50:28 +08:00 via iPhone
    五楼的办法是最好的
    ibcker
        8
    ibcker  
       2016-09-07 02:54:26 +08:00
    五楼说得对
    lslqtz
        9
    lslqtz  
       2016-09-07 07:45:37 +08:00
    是的,我是直接用了类似的方法,不过不是跳转到自己的页面。
    http://lslqtz.osupink.me -> https://osu.ppy.sh/u/lslqtz
    其他域名类似,也是泛域名
    jimzhong
        10
    jimzhong  
       2016-09-07 08:59:14 +08:00
    对于个人小网站泛解析足够了。
    findex
        11
    findex  
    OP
       2016-09-07 09:22:24 +08:00
    @shiji 一个网站,多个作者吧。
    lincanbin
        12
    lincanbin  
       2016-09-07 10:20:53 +08:00
    泛解析,一个入口程序根据 HTTP Header 里的 Host 来分发即可。
    chuhemiao
        13
    chuhemiao  
       2016-09-07 10:26:11 +08:00
    直接解析不就好了,在纠结什么呢
    ytmsdy
        14
    ytmsdy  
       2016-09-07 10:31:56 +08:00
    泛域名解析!直接*。 helloblog.com 都解析到目标服务器,然后在目标服务器的 http 程序里面设置就好了
    wyntergreg
        15
    wyntergreg  
       2016-09-07 11:33:42 +08:00
    5 楼第 2 条 nginx 配置需要重启,不是好的解决办法
    1.泛解析(毋庸置疑)
    2.用户注册时记录用户的个人域名,当然不允许注册站点正在使用的子域名和已有的其他用户的子域名
    3.后端程序中判断客户端访问域名,只要访问的不是正常的站点子域名,就返回用户子域名的视图
    findex
        16
    findex  
    OP
       2016-09-07 12:32:23 +08:00
    @ytmsdy 可以,但是问题是并不知道用户要什么子域名 someone.helloblog.com 如果他半夜申请的话,怎么让机器自动生成?这个需要自己搭建 DNS 服务器吧,把 helloblog.com 的 NS 指向自己的 DNS 服务器,并且在自己的 NS 服务器上打开一个自动生成子域名的 API ,方便其他应用网站生成子域名。
    explorepress
        17
    explorepress  
       2016-09-07 13:08:46 +08:00
    你的域名是公的还是母的,找一个母的或者公的域名,就会生很多个子域名了。
    bk201
        18
    bk201  
       2016-09-07 15:44:12 +08:00 via iPhone
    泛解析会导致单点压力过大吧.
    ytmsdy
        19
    ytmsdy  
       2016-09-07 16:07:31 +08:00
    @findex 你这就复杂话了吧,*.helloblog.com ,其实是可以获取到*里面具体是什么信息的。你把这个子域名当作参数传到程序里面就可以了。把所有的请求都转到主域名所指向的应用上,然后再通过这个应该对数据进行转发,或者直接处理
    bombless
        20
    bombless  
       2016-09-07 16:15:35 +08:00
    泛解析然后负载均衡就好了
    holinhot
        21
    holinhot  
       2016-09-08 09:48:24 +08:00
    泛解析了。然后程序上根据不同的域名来显示不同的内容。 qq 空间也是如此。
    12391728391624.qzone.qq.com
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1924 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 16:28 · PVG 00:28 · LAX 08:28 · JFK 11:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.