如何帮助我的客户将子域指向我的网站?

时间:2014-04-28 23:36:15

标签: dns

我目前正在为客户托管内容。我需要将客户的子域“promo.client1.com”指向我网站中的文件夹:“mysite.com/client1”,以便访问者看到我的客户的域名时访问内容(我不能使用重定向)。

我想知道我应该问我的客户该做什么。

我确信这可以通过指向我的IP的A记录来完成。这是正确的吗?怎么办呢?

2 个答案:

答案 0 :(得分:0)

此答案不符合问题的最新编辑。我选择将其作为重定向可接受的参考

首先,不要为您的业务伙伴使用术语“客户”,因为这会使这个答案变得混乱。此答案中的客户端是用户,即请求内容的浏览器。

鉴于您需要呼叫另一台服务器(用户要求业务伙伴的服务器,但他必须要求您提供服务器),您的业务伙伴必须发出REDIRECT(永久或临时)或他必须通过他的服务器代理您的内容,并从那里代理用户。单独解密这样的问题是不可能的。

对于REDIRECT,可以在他的服务器配置中完成,也可以使用带有REDIRECT的HTML。

检查this question如何从HTML文件或使用服务器配置发出重定向。请务必查看有关每种方法的优缺点的评论。

答案 1 :(得分:0)

考虑到您无法操作重定向,您基本上有两种选择:代理或DNS。

使用代理,您的业务伙伴可以设置一个代理,将代理浏览器对您的服务器的请求。这个概念被称为reverse proxy,并且有很多关于如何实现它的文档。

另一个选项是设置一个DNS条目,将其域的条目指向服务器上的特定地址。

您可以为您的员工的条目分配一个独有的IP地址,然后让他将A记录添加到他的DNS表中的专用IP地址,例如绑定标准配置格式:

  

your-server.businessassociate.com IN A 1.1.1.1

说明1.1.1.1是您分配给服务器的专用地址,该地址将回复对业务伙伴的域条目的请求。您很可能会有一个虚拟服务器使用该配置进行应答。

另一个选项是要求您的业务伙伴在其DNS表中创建一个CNAME条目,该表通过名称引用您的服务器。对于已经有一个的服务器,您永远不应该有另一个A条目,因此CNAME就像一个“别名”,并且一旦您更改自己的DNS条目,就会反映原始服务器名称的IP地址的变化。像这样:

  

your-server.businessassociate.com IN CNAME your-server.your-domain.com

然后您必须在your-server.your-domain.com计算机上运行的Web服务器上设置虚拟服务器,以处理发送到your-server.businessassociate.com的请求。

你不能通过DNS做的就是你的问题所在:promo.cluent1.com永远不能翻译成mysite.com/client1,因为DNS无法处理HTTP的细节,就像在斜杠之后的那样。您可以通过在http服务器上设置一个虚拟主机来实现类似的结果,该虚拟主机在内部重写your-server.businessassociate.com到mysite.com/client1,但您无法摆脱设置虚拟主机或类似主机。