2010-03-19 71 views
0

我一直在思考一种简洁的负载平衡方法,并且需要的一件事就是能够从多个位置在HTML页面上加载图像,而无需重写URL(在每个负载上)是否可以使用HTTP重定向非HTML文件?并链接重定向?

那么,我需要能够做的是有一个URL是“静态”URL。如http://example.com/myimage.png虽然图像实际上不包含在example.com中。因此,example.com会执行302或301或307 HTTP响应,导致重定向到2.example.com。浏览器如何处理像这种情况下的图像?另外,如果2.example.com也没有包含它,并且它去了3.example.com,那么浏览器如何处理多个重定向呢? (请注意,我问这个,因为我从来没有见过的任何东西,但一个HTML页面301重定向)

而且,其状态代码将是最好的使用。 301的意思是“永久移动”,这个“移动”不是永久性的,所以我不希望它被缓存。我应该使用307吗?这是由搜索引擎和现代浏览器支持的吗?

回答

3

重定向是HTTP的概念,适用于可以通过HTTP传递,不仅HTML的任何资源。在大多数现代浏览器中,链接重定向和非HTML重定向都可以正常工作。

如果你想临时重定向,使用302,除非你想重定向POST并提出为好。问题是,大多数实现将发出GET用于POST或PUT后的新资源地址,进行了3​​02

注意,303和307是​​HTTP 1.1特有的。

+0

是的,但这是由现代浏览器和搜索引擎蜘蛛支持? – Earlz 2010-03-19 15:44:23

+0

是的,它受到两者的支持。 – ceejayoz 2010-03-19 16:06:53

2

我会建议像这样的负载平衡。负载平衡不是3xx响应的目的。

HTTP协议具有缓存功能,可以帮助减少服务器负载。还有用于负载平衡的服务器技术。这些技术得到很好的发展将更加稳定和可重用。

+0

负载平衡只是我的一个想法..我只是想实验..(如在,我没有把它放入生产或任何东西) – Earlz 2010-03-19 15:43:34

0

笃Ç说,我觉得你找错了树。

如果你想做负载平衡,那么做负载平衡。循环法DNS是最简单的方法(并且在许多方面比更昂贵的解决方案更有效)。如果您必须尝试在具有不同FQDN的服务器之间进行负载平衡,请使用javascript生成URL客户端。

您的文章的残余适用于约重定向其他问题。有很多关于搜索引擎优化的不良建议。谷歌拥有约92%的全球市场,并发布了相当详细的规格说明他们如何蜘蛛网站和排名。在您的域名中重定向不应影响您在任何主管搜索引擎中的排名。在您的域外重定向只会改善目标的排名。

是的,浏览器对单个请求所遵循的重定向数量实施了限制 - 但它因浏览器而异。