首先,让我为一个可能模糊的问题道歉。
我需要一些关于如何configuration下面描述的设置的指针。 我没有要求完成configuration文件,但我没有把它拼在一起。
build立
example.com
git.example.com
, issues.example.com
目前
我在想,我可以设置路由器使用服务器作为主DNS。 服务器正在运行Bind9并将子域( git.example.com
和issues.example.com
)parsing为服务器的静态IP。 Apache服务器的内容。 Bind9不parsingexample.com
,所以路由器使用辅助DNS(或Bind9可以redirect到另一个DNS服务器)。
到目前为止,我可以configuration设置,以便访问example.com/git
和example.com/issues
,但是我无法访问example.com
。
所以,我的问题是:我如何configurationBind9来解决git.example.com
但不是example.com
,如何configurationApache以不同的方式(例如,另一个文档根?) issues.example.com
从issues.example.com
? 如果Bind9和Apache如何相互关联?
希望这是有道理的,我最近开始了这个整个服务器的事情,只有对networking的基本理论的理解。 🙂
编辑 :要清楚; git.example.com
和issues.example.com
不需要(甚至不应该)从我们的networking外部访问。
编辑2 :添加图片。
首先,让我们澄清一个误解。 这种说法是不正确的:“Bind9不能parsingexample.com,所以路由器使用辅助DNS。” DNSparsing器不会通过configuration的DNS服务器列表,直到find它喜欢的响应。 他们通常假设所有服务器都会正确响应,并在一台服务器响应(正面或负面)后停止。
现在到了实际的问题。 看起来,git.example.com和issues.example.com不是子域名,而是实际上的服务器/主机名称。 子域名可能类似于:git.yourdepartment.example.com,“yourdepartment.example.com”是子域名。 如果是这种情况(它们实际上是服务器名称),那么您希望负责example.com的DNS服务器的pipe理员为您添加这2个Alogging。 然后在您的DNS(Bind9)服务器上为example.com创build一个转发区域:
zone "example.com" { type forward; allow-query {any; }; // modify as you see fit forwarders { ip.of.dns.server1; ip.of.dns.server2; }; };
(编辑:或者只是运行一个caching名称服务器)
完成之后,您应该能够轻松地在Apache中为每个git.example.com和issues.example.com服务器设置虚拟主机(这里不缺less指南和教程)。
编辑:DNS和Apache之间的关系? DNS从URL获取主机名,并返回能够为请求提供服务的服务器(在这种情况下为Apache)的IP地址。 就这样。 (好吧,这太过简单了,但相当准确)