我有一个公共的IP和一些主机名指向它,在这个公共的IP服务器上,我有其他Intranet接口运行Apache虚拟主机服务器 ,我的问题是如何转发外部请求到这个接口?
在公共IP机器上运行一个简单的apache虚拟主机,我可以很容易地通过这种方式编辑/etc/hosts
127.0.0.1 mysite.com 127.0.0.1 blog.mysite.com
但是由于某种原因,它不适用于Intranet接口
172.17.0.1 mysite.com 172.17.0.2 blog.mysite.com 172.17.0.2 news.mysite.com
ps:一个Apache服务器正在每个IP上运行
我简单地得到ERR_CONNECTION_REFUSED ,如果一个ping它,我得到的服务器IP,所以公共DNS正在工作
你可以帮我吗?
好的几个小时后我find了答案,很简单:
你需要有另外一个apache实例,或者类似于这个例子在端口80上运行的任何types的实例,并且创build虚拟主机来parsing主机名到intranet ips。
如果我的Apache运行在其他Intranet IP上,它们在公共IP上是不可见的,如果有人访问myhost.com他将被指向0.0.0.0:80 (公共IP),所以在这个端口你需要有一些服务,理解该请求并将其转发给相应的内部主机,Apache做到这一点。