• XCache and XCacheLookup headers explained


    X-Cache and X-Cache-Lookup headers explained « The eternal fight between admins and computers

    X-Cache and X-Cache-Lookup headers explained

    by Vide on April 22, 2008

    Ok, maybe you have no problems while dealing with web caches but I (and my workmates as well :P ) do, so here it goes this post.

    Let imagine you are behind a classical transparent proxy on port 80 and you’re visiting a web site running an internal web cache (so, another proxy). If you inspect your HTTP headers looking for some info, you can find two lines that look like this, given domain.tld as the local website and proxy.local as your internal transparent proxy.



    X-Cache HIT from proxy.domain.tld, MISS from proxy.local

    X-Cache-Lookup HIT from proxy.domain.tld:3128, MISS from proxy.local:3128



    What does this mean? That this is the first time you visit that website (MISS from proxy.local) and that their proxy has a valid copy of the page in its cache (X-Cache HIT proxy.domain.tld). I’ll explain X-Cache-Lookup meaning later



    X-Cache MISS from proxy.domain.tld, MISS from proxy.local

    X-Cache-Lookup HIT from proxy.domain.tld:3128, HIT from proxy.local:3128

    Now, we’ve just refreshed the page (F5, Ctrl+R, you name it) but wait… what’s happening? It seems both proxies are not serving any page, and we’ve got two mysterious HITs in Cache-Lookup. Well, it’s very simple. We are not counting another level of cache. The browser web cache. So, the page now is not pulled at all from the net, instead Firefox (or your web browser of choice) is using it’s own cache to show the page, so we’ve got two MISSes in X-Cache but nonetheless both proxies are telling us that they would send the cache copy if asked. So, if you’re debugging your proxy system, it means it’s working correctly.

    Now, what if we empty Firefox’s cache ??

    Here it is:



    X-Cache MISS from proxy.domain.tld, HIT from proxy.local

    X-Cache-Lookup HIT from proxy.domain.tld:3128, HIT from proxy.local:3128



    Our transparent proxy has got the page we need so it sends it to us (HIT from proxy.local), the remote proxy doesn’t need to do anything and both could send the page in case we want.

    Although it could seem complicated, once you get it it’s very very simple, and you can easily nest more and more cache levels.

  • 相关阅读:
    The IBM Blockchain Platform: Develop pre-requisites
    分布式账本简介
    MAC快捷键
    js跳转方法整理与自动刷新
    解决Excel打开UTF-8编码CSV文件乱码的问题
    C#代码实现邮箱验证C#中及一些常用的正则表达式
    php大小写转换函数
    PHP empty()函数使用需要注意
    关于网站调用在线翻译api实现翻译功能
    关于淘宝店铺装修弹出层popup的记录
  • 原文地址:https://www.cnblogs.com/lexus/p/2478425.html
Copyright © 2020-2023  润新知