如何将域指向动态子域

时间:2017-10-01 13:45:57

标签: .htaccess dns

目前,我有一项需要动态子域的服务,该服务已按预期植入并正常工作,现在,在用户获得子域后,我想要做的是,给予用户能够将their own域名连接到我提供的子域。

例如:

这是用户danny,其中包含网址:

danny.example.com

所以,现在一切都按预期工作,用户的下一件事就是购买域名并将其指向danny.example.com

所以这就是我被困的地方。

在这里,我想让用户能够将dns设置为他/她的域

ns1.example.com

ns2.example.com

然后,我期望的是,它解析了主域(example.com),然后我检查了用户danny提供的域名,让我们说域名是{{ 1}},然后如果danny.com与用户danny.com已在danny中提交的域名相匹配,那么流程将继续,example.com内容会显示

所以我想要的缩短版本是:

danny.example.com指向sample.example.com并使用完全相同的内容

顺便说一句,目前我一直在尝试使用免费域名sample.com进行测试

我已经彻底搜索了这个,我真的很沮丧,因为我无法找到"对"几个星期的解决方案。

----更新----

博客是我想要的一个很好的例子。

----更新2 ----

我使用的服务器是在apache上运行的共享主机

我有以下地址的.cf条记录:

CNAME

mail.mysite.com

当然还有通配符

www.mysite.com

1 个答案:

答案 0 :(得分:0)

我在这里看到两个单独的问题:

1)将一个(或多个)完全限定域名(FQDN)指向您的服务器 2)显示正确的网站。

关于第一个Point我不会强迫用户使用你的NS,因为如果用户已经有一个域并且只想将子域链接到你的服务器,那么我只是给用户一个指令他应该怎么做做,例如使用CNAME将自己的FQDN设置到他的个人服务域(例如danny.example.com)。 CNAME优于A-Record,因为如果您必须更改IP,则所有用户也必须更改它们。 另一方面,如果你真的想要提供NS,你应该有一个解决方案,用户可以管理漏洞域设置,因为用户可能想要添加邮件服务器(MX记录)或其他一些子域与您的服务无关。

让我们说第一点已经解决,因此用户FQDN指向您的服务器,那么您只需要显示与您自己的子域相同的网站空间/网站(例如danny.example.com)。使用htaccess文件无法解决这个问题,但在Virtualhost配置中非常容易。对于Apache就像这样: Mask subdomain.mydomain1.com to subdomain.mydomain2.com

在nginx上,它的工作方式类似:https://nginx.org/en/docs/http/server_names.html

由于您未提供任何详细信息,因此您只能提供一般概述。所有这些事情都可以用一种方式编写,但这是一个偏离主题(如果不存在则打开一个新问题)。