缓存代理何时应检查更改? [英] When should cacheing proxies check for changes?

查看:80
本文介绍了缓存代理何时应检查更改?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试在comp.infosystems上发布此内容。 www.misc ,但该组

似乎获得的流量非常小。所以现在我在这里尝试。如果

是一个更合适的组,请告诉我。


我对如何缓存网络代理的行为感兴趣/>
关于更改的页面。在更改了我所拥有的简单的b
网站的内容之后,我发现在我有权访问的至少一个ISP的缓存网络代理没有刷新他们的缓存。无论我做了什么(在IE 6.0中甚至按Ctrl + F5试图强制重新加载),他们只需继续提供旧内容即可获得
。当这样的缓存代理被要求提供一个页面时,我总是假设

,它应该检查

返回原始Web服务器以查看页面是否已更新

(基于页面的Last-Modified HTTP标头的缓存值)。我相信这是一个获得if-modified-since的结果。请求。在有问题的ISP的在线论坛上询问

之后,其他人告诉我实际上不需要一个

缓存代理来检查,而且很多/>
管理员设置他们的代理只能一次又一次地检查。


我明白,通过避免这样做,ISP节省了一点点

外部带宽(虽然节省的金额看起来非常微不足道,但是它会减少延迟(显然是一个很好的想法),但是如果这是以牺牲陈旧页面为代价的,然后它就好像是错误的。缓存代理是否真的不值得b $ b预计在服务之前检查页面是否已被修改

out?


作为HTML作者,我不知道如何对此进行任何

控制,除非每次更改页面名称

更新它(除了麻烦之外,它会使得b / b
浏览器书签过时)。


(在建议我之前)使用HTTP标头来协助代理,我只需指出该网站是在普通ISP上托管的,并且

我无法控制他们的网络服务器发出的HTTP标头。

但是我检查了标题,它们确实包含了Last-Modified

值。

I tried posting this on comp.infosystems.www.misc, but that group
appears to get very little traffic. So now I''m trying here. If there
is a more appropriate group, please let me know.

I''m interested in how cacheing web proxies are expected to behave with
regard to pages that change. After changing the content of a simple
web site I have, I discovered that the cacheing web proxies at at
least one ISP I have access to did not refresh their caches. No matter
what I did (even Ctrl+F5 in IE 6.0 to try and force a reload), they
just carried on serving up the old content. I had always assumed that
when such a cacheing proxy was asked for a page, that it should check
back with the original web server to see if the page had been updated
(based on the cached value of the page''s Last-Modified HTTP header). I
believe this is a "Get if-modified-since" request. After asking about
this on the online forum of the ISP in question, others told me that a
cacheing proxy is not actually required to check back, and that many
administrators set up their proxies to only check back now and again.

I understand that by avoiding doing so the ISP saves a little bit of
external bandwidth (although the amount saved seems so trifling as to
be irrelevant), and that it will reduce latency (obviously a good
idea), but if it''s at the expense of serving up stale pages, then it
just seems kind of wrong. Is it true that a cacheing proxy isn''t
expected to check whether a page has been modified before serving it
out?

As the HTML author, I don''t see how I can be expected to have any
control over this, short of changing the name of the page each time I
update it (which, apart from being a hassle to do, would render
browser bookmarks out of date).

(Before advising me to use the HTTP headers to assist the proxy, I
will just point out that the web site is hosted at a "normal" ISP, and
I have no control over the HTTP headers their web servers send out.
But I have checked the headers, and they do include a Last-Modified
value).

推荐答案

Clive Backham写道:
Clive Backham wrote:
(在建议我使用HTTP标头来协助代理之前......
(Before advising me to use the HTTP headers to assist the proxy...




Wel l HTTP标头是此作业的正确工具。如果你不能设置

''Expires'',那么请你的ISP为你做。如果他们不想,这对你来说很重要,那就投资于更好的网站主办。


-

David Dorward http://dorward.me.uk/


在文章< 3f *************** @ news.nildram.co.uk>,

Clive Backham< cl ***@capita.nildram.co.uk>写道:
In article <3f***************@news.nildram.co.uk>,
Clive Backham <cl***@capita.nildram.co.uk> wrote:
我对如何缓存网页代理与
关于更改网页的行为感兴趣。在更改了我所拥有的简单网站的内容之后,我发现在我有权访问的至少一个ISP中的缓存网络代理没有刷新它们的缓存。无论我做了什么(甚至在IE 6.0中按Ctrl + F5试图强制重新加载),他们只是继续提供旧内容。我一直认为
I''m interested in how cacheing web proxies are expected to behave with
regard to pages that change. After changing the content of a simple
web site I have, I discovered that the cacheing web proxies at at
least one ISP I have access to did not refresh their caches. No matter
what I did (even Ctrl+F5 in IE 6.0 to try and force a reload), they
just carried on serving up the old content. I had always assumed that



根据我的经验,IE只发送If-Modified-Since而不是适当的

Cache-Control标头。尝试符合标准的浏览器,如lynx或

Mozilla / Firebird,以强制缓存刷新。 (我认为Opera会这样做

on * two * shift / refreshes。)


nhoJ


- -

John P Baker



In my experience IE only sends If-Modified-Since rather than appropriate
Cache-Control headers. Try a standards-compliant browser like lynx or
Mozilla/Firebird to force caches to refresh. (I think Opera will do it
on *two* shift/refreshes.)

nhoJ

--
John P Baker


文章< 3f *************** @ news。 nildram.co.uk>,无限猴子之一

键盘上的 cl *** @ capita .nildram.co.uk (Clive Backham)写道:
In article <3f***************@news.nildram.co.uk>, one of infinite monkeys
at the keyboard of cl***@capita.nildram.co.uk (Clive Backham) wrote:
我试着在comp.infosystems上发布这个。 www.misc ,但该组
似乎获得的流量非常少。所以现在我在这里尝试。如果
是一个更合适的团体,请告诉我。


嗯,这是群体之间的问题之一。我希望

能够在*。服务器上找到更多相关的专业知识。*。

我对如何缓存网络代理的行为感兴趣/>关于改变的页面。


您发送的内容是否保守,您接受的内容是否自由?


您是否在HTTP RFC中阅读了对此的广泛讨论,或者在

代理软件的文档?

在更改了我所拥有的简单网站的内容后,我发现在
我有权访问的至少一个ISP没有刷新他们的缓存。无论我做了什么(甚至在IE 6.0中按Ctrl + F5试图强制重新加载),他们只是继续提供旧内容。


IE仅以支持非常有限的HTTP子集而闻名。

这是你应该用于诊断的最后一件事! br />
我一直认为,当这样的缓存代理被要求提供一个页面时,它应该检查
返回原始的Web服务器以查看该页面是否已更新


这取决于页面和浏览器的标题。请参阅[HTTP]。

(基于页面的Last-Modified HTTP标头的缓存值)。我相信这是一个获得如果被修改 - 从而请求。在有问题的ISP的在线论坛上询问了这个之后,其他人告诉我,实际上并不需要一个缓存代理来检查,并且许多管理员设置他们的代理到只是一次又一次地检查。


这是真的,但并不是全部。 HTTP / 1.1为浏览器和服务器提供了很多

控制权。但有时会被无知的作者滥用

(请参阅如何防止我的网页被缓存?新闻组中的线程

- 正确答案几乎总是要做没有

,因为服务器将默认为正确的行为)而反过来

代理有时可能过于激进。人们可能会建议将搜索引擎垃圾邮件与关键字贬值进行类比。

我明白通过避免这样做,ISP可以节省一点点<外部带宽(虽然节省的金额看起来很微不足道,但是没什么关系),这可能是非常相关的,如果你是巨大的,代理商背后有数百万美元的用户。想想AOL:如果他们停止运行他们的

大缓存代理,增加的流量将是非常重要的b $ b整个网络骨干网。

和它会减少延迟(显然是一个很好的想法),但如果它以牺牲过时的页面为代价,那么它似乎有点不对劲。缓存代理是否真的无法在服务之前检查页面是否已被修改



参见[HTTP]。

作为HTML作者,我不知道如何能够控制任何
这样,每次我更新它时都不会改变页面的名称(除了麻烦之外,它会使浏览器书签过时)。


并且会以更多的方式让你解决问题。

(在建议我使用HTTP标头来协助代理之前,我<只会指出该网站是在正常的ISP上托管的,而且我无法控制他们的网络服务器发出的HTTP标头。
但是我已检查了标题,它们确实包括Last-Modified
值。
I tried posting this on comp.infosystems.www.misc, but that group
appears to get very little traffic. So now I''m trying here. If there
is a more appropriate group, please let me know.
Well, it''s one of those issues that fall between groups. I''d expect
to find more relevant expertise on *.servers.*.
I''m interested in how cacheing web proxies are expected to behave with
regard to pages that change.
Conservative in what you send, liberal in what you accept?

Have you read the extensive discussion of this in the HTTP RFC, or in
documentation of proxying software?
After changing the content of a simple
web site I have, I discovered that the cacheing web proxies at at
least one ISP I have access to did not refresh their caches. No matter
what I did (even Ctrl+F5 in IE 6.0 to try and force a reload), they
just carried on serving up the old content.
IE is well-known for only supporting a very limited subset of HTTP.
It''s the last thing you should ever use for diagnostics!
I had always assumed that
when such a cacheing proxy was asked for a page, that it should check
back with the original web server to see if the page had been updated
That depends on the headers from the page and from the browser. See [HTTP].
(based on the cached value of the page''s Last-Modified HTTP header). I
believe this is a "Get if-modified-since" request. After asking about
this on the online forum of the ISP in question, others told me that a
cacheing proxy is not actually required to check back, and that many
administrators set up their proxies to only check back now and again.
That''s true, but it''s not the whole story. HTTP/1.1 gives a lot of
control of this to browsers and servers. But that sometimes gets abused
by ignorant authors (see "how do I prevent my page getting cached" threads
in the newsgroups - the right answer is almost always to do nothing
because the server will default to correct behaviour) and in turn
proxies may sometimes be over-aggressive. One could suggest a loose
analogy to search-engine-spamming that devalued "keywords".
I understand that by avoiding doing so the ISP saves a little bit of
external bandwidth (although the amount saved seems so trifling as to
be irrelevant),
Erm, it may be very relevant indeed if you''re huge and have millions
of users behind a proxy. Think AOL: if they stopped running their
big caching proxies, the increased traffic would be significant
throughout the ''net backbone.
and that it will reduce latency (obviously a good
idea), but if it''s at the expense of serving up stale pages, then it
just seems kind of wrong. Is it true that a cacheing proxy isn''t
expected to check whether a page has been modified before serving it
out?
See [HTTP].
As the HTML author, I don''t see how I can be expected to have any
control over this, short of changing the name of the page each time I
update it (which, apart from being a hassle to do, would render
browser bookmarks out of date).
And would make you part of the problem in more ways than that.
(Before advising me to use the HTTP headers to assist the proxy, I
will just point out that the web site is hosted at a "normal" ISP, and
I have no control over the HTTP headers their web servers send out.
But I have checked the headers, and they do include a Last-Modified
value).




所以你正好从你所处的位置开始(除了你使用的

MSIE)。坚持下去。那里有很多破碎;

不要让它变得更糟。


-

Nick Kew


迫切需要支付工作 - 见 http://www.webthing.com/~nick/cv.html


这篇关于缓存代理何时应检查更改?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆