我对Web应用程序如何能够立即为新用户创建子域感到好奇,例如newuser.wordpress.comexample.blogspot.com。如果我需要为网站创建一个新的子域,通常需要我登录DNS控制面板并手动创建一个子域。

我已经阅读了有关通配符DNS和子域的示例,但这似乎无法回答有关登录用户如何创建自己的子域的问题。我想象使用.htaccess文件可以重写URL来加载与特定用户相关的子文件夹。

我考虑的解决方案是使用Amazon Route 53这样的服务并创建新的使用API​​的子域。我不确定这是否将是一个好的解决方案。这是否意味着Tumblr拥有自己的域名服务器来处理这些请求?

评论

nathangiesbrecht的答案是正确的。您可以使用CloudFlare这样的CDN轻松添加通配符DNS条目。查看此内容,以及适用于WordPress网站的内容。

#1 楼

您说对了,把戏是通配符DNS条目(用星号表示)。本质上,这是一个DNS条目,它将与所有没有特定DNS条目的子域匹配。然后,“路由”发生在应用程序/网站端。没有为子域创建实际的DNS条目,因为在发出DNS请求时它会找到“匹配项”,这是因为DNS服务器正在返回该域的通配DNS条目的IP地址。

要查看现实中的示例,您可以看一下Wordpress Multisite如何与通配符DNS条目一起使用(注意:许多共享的托管服务提供商不允许您创建通配符DNS条目)。因为“路由”是在应用程序而不是DNS级别上发生的,所以它还允许您根据需要将自定义域映射到子域(例如在wordpress.com上提供的子域)。