假设我有两台服务器,并按如下方式设置了DNS循环调度:
www IN A 192.168.0.2
www IN A 192.168.0.3从这个FAQ中,它声明“所有最新的浏览器(IE、火狐、Safari和Chrome)都支持客户端重试(有时称为浏览器重试)。因此,当由于服务器故障而超时时,它将重试并在轮询中命中下一个服务器”。
我的问题是:如果我想让192.168.0.2中的web服务器保持运行,它应该返回什么(HTTP状态代码?连接拒绝?)以便将某些请求(例如主机报头= cde.com)重定向到192.168.0.3?
更新:或者,如果主机报头不匹配,我应该只关闭tcp套接字吗?
发布于 2009-07-08 13:42:05
我认为你所指的重试发生在TCP/IP级别--如果你返回一个HTTP响应,你几乎是在说“你好!我是一个you服务器!我还活着!”
然后,您可以尝试使用.2服务器上的iptables阻止所有端口80流量,也许可以使用一些额外的规则让您继续测试?
编辑:既然那不会飞起来,我建议在let服务器前面放一些超文本传输协议级别的东西,比如haproxy,让你平衡和管理传入的请求。
发布于 2009-07-17 10:45:29
在Mozilla的情况下,重试基本上意味着:如果到第一个IP地址的连接建立失败(如主机不可达、连接建立超时或连接被拒绝),则将使用第二个IP地址。
如果有人真的想知道,我可能会找到代码的lxr链接。
(对于代理自动配置文件,也有更复杂的行为)。
因此,在这些情况下,您的web服务器实际上并不构成浏览器接收到的响应。因此,不需要编码。
https://stackoverflow.com/questions/1098115
复制相似问题