多个IP地址与反向代理/ Apache重写

我们是一个小企业,试图为我们的内部盒子决定最佳的架构。 我们有一些开发,生产和分期环境。 所有这些都是公开的(但当然受到密码的限制)。

对于一个相当简单的需求,我并不认为每个盒子都需要多个IP地址。 似乎增加了不必要的复杂性。 相反,我在辩论说,在这个阶段只需要使用一个反向代理(例如Squid)就可以拥有一个公共IP地址,或者只需在Apache中使用重写将请求转发到合适的服务器(取决于域名)即可。

你怎么看? 我得到这个错误,多个IP地址是要走的路,无论组织的大小? 你通常select什么方法?

我喜欢清漆或ha代理鱿鱼反向代理。 然而,分开的IP地址提供了更多的灵活性 – 例如,如果你想使用不同的协议,如SSH远程访问盒子。 代理也需要更多的层次,影响到性能和复杂的诊断。

我们使用Apache来重写/接近内部Web服务器,它工作得很好。 但是,要小心如何在服务器上设置虚拟主机,因为匹配模式的第一条规则就是所选的规则。 订单可能很重要。例如,如果您有一个默认或回退的地方(例如您的主站点),它需要是最后一个。

另外,SSL有点棘手。 您需要* .yourdomain.com的通配符证书,然后使用每个虚拟主机的URL匹配转发。 通配证书可以有点棘手,但不是太糟糕。

我没有看到任何使用Apache代理回适当的内部服务器的inheritance不良。 只需设置windcard DNS,以便可以使用dev.foo.com,test.foo.com等,然后使用相应的代理规则设置vhost定义,将其路由回相应的框。 也就是说,你可以使用一些工具来做到这一点; Apache不是唯一的解决scheme。

至于证书,除非你绝对需要有效的开发/testing证书,只要制作你自己的通配证书即可。

另外,Squid是一个很好的FORWARD代理,但是相当的沉重/废话。