首先,是的,我知道,这个问题可能是重复的,但是现在我search了几个小时,我找不到任何相关的答案….所以我试着问。
我得到了,比方说,domain-a.com&domain-b.com。 domain-a只是domain-b.com的别名,一切(root&subdomains)都应该redirect到它。 所以我想要下面的redirect:
http://domain-a.com => http://domain-b.com http://aze.domain-a.com => http://aze.domain-b.com http://www.domain-a.com => http://www.domain-b.com
我也需要浏览器来显示domain-b.com
,所以domain-a.com
应该永远不会出现在任何地方时访问域名…
好的,到目前为止,这很容易使用A-record和使用nginx或Apache的redirect。 但是,我只想使用我的DNS设置(通过OVH面板)来完成所有这些,所以我只需要在我自己的服务器上处理domain-b.com
。
我试过了:
domain-a.com
上使用这样的CNAMElogging: * IN CNAME domain-b.com.
,但是当我去aze.domain-a.com
,URL不会改变,并且根域不被处理。 看起来DNAMElogging是适合我的需要的,但是我不能用OVH来build立一个logging。 所以,如果这是正确的logging使用,我将不得不将我的域名转移到另一个注册商,所以我宁愿在做之前确定。
我有另一个约束:我的服务器处理几个域名,所以我不能赶上每个请求redirect到domain-b.com
等价,我domain-a.com
configurationdomain-a.com
。
那么,这可能吗?
感谢您的帮助
Web请求redirect的唯一方法是使用Web服务器。 当一个DNSparsing器,就像内置在用户系统中的parsing器一样,请求一个地址,它会得到一个地址。 一个CNAME只是告诉它从另一个地方得到的地址,但它需要一个地址,句点。 然后,它将向networking服务器发起请求的域的请求,使用它获得的地址作为启动TCP连接的手段。 您的浏览器和您的DNSparsing器之间没有连接。 因此,即使使用DNAME(在更大规模上只是CNAME),您所要求的内容在纯DNSscheme中也是不可能的。
我不熟悉nginx的configuration,但在apache中,可以创build一个虚拟主机来为domain-b服务。 顶级的虚拟主机可以作为访问网站的任何其他方式的“全面获取”。 您可以使用一些重写规则将所有这些catch-allsredirect到domain-b。 所以你可以捕获aze.domain-x.com或aze.domain-y.com等,并抓住主机部分,并将其redirect到aze.domain-b.com。 你将不得不使用一些正则expression式等,但这是正确的方法来做到这一点。 请参阅Apache 2.4redirect并使用mod_rewrite重新映射 。 我相信nginx具有相同的function,虽然也许以不同的方式执行。