AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1095373
Accepted
sanity
sanity
Asked: 2022-03-05 12:36:46 +0800 CST2022-03-05 12:36:46 +0800 CST 2022-03-05 12:36:46 +0800 CST

Varnish 通过调用“hit_for_pass”拒绝缓存

  • 772
   13 StatSess     c 127.0.0.2 48714 0 1 1 0 1 1 687 2573
   24 BackendXID   b 1374630903
   24 TxRequest    b GET
   24 TxURL        b /do_ajax.php?action=get-dom
   24 TxProtocol   b HTTP/1.0
   24 TxHeader     b X-Forwarded-Proto: https
   24 TxHeader     b X-Forwarded-Port: 443
   24 TxHeader     b Host: www.officestocks.com
   24 TxHeader     b Accept-Language: en-US,en;q=0.9
   24 TxHeader     b Accept: text/plain, */*; q=0.01
   24 TxHeader     b User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 15_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Mobile/15E148 Safari/604.1
   24 TxHeader     b Referer: https://www.officestocks.com/
   24 TxHeader     b X-Requested-With: XMLHttpRequest
   24 TxHeader     b X-Remote-IP: 184.89.213.63
   24 TxHeader     b X-Forwarded-For: 184.89.213.63
   24 TxHeader     b Accept-Encoding: gzip
   24 TxHeader     b X-Varnish: 1374630903
   24 RxProtocol   b HTTP/1.1
   24 RxStatus     b 200
   24 RxResponse   b OK
   24 RxHeader     b Date: Fri, 04 Mar 2022 20:20:57 GMT
   24 RxHeader     b Server: Apache/2.2.15 (CentOS)
   24 RxHeader     b X-Robots-Tag: noindex
   24 RxHeader     b X-Content-Type-Options: nosniff
   24 RxHeader     b Expires: Wed, 11 Jan 1984 05:00:00 GMT
   24 RxHeader     b Cache-Control: no-cache, must-revalidate, max-age=0
   24 RxHeader     b X-Frame-Options: SAMEORIGIN
   24 RxHeader     b Referrer-Policy: strict-origin-when-cross-origin
   24 RxHeader     b Vary: Accept-Encoding,User-Agent
   24 RxHeader     b Content-Encoding: gzip
   24 RxHeader     b Connection: close
   24 RxHeader     b Content-Type: text/html; charset=UTF-8
   24 Fetch_Body   b 5(eof) cls 0 mklen 1
   24 Length       b 26
   24 BackendClose b default
   12 SessionOpen  c 127.0.0.2 48702 127.0.0.2:80
   12 ReqStart     c 127.0.0.2 48702 1374630903
   12 RxRequest    c GET
   12 RxURL        c /do_ajax.php?action=get-dom
   12 RxProtocol   c HTTP/1.0
   12 RxHeader     c X-Real-IP: 184.89.213.63
   12 RxHeader     c X-Forwarded-For: 184.89.213.63
   12 RxHeader     c X-Forwarded-Proto: https
   12 RxHeader     c X-Forwarded-Port: 443
   12 RxHeader     c Host: www.officestocks.com
   12 RxHeader     c Connection: close
   12 RxHeader     c Accept-Language: en-US,en;q=0.9
   12 RxHeader     c Accept-Encoding: gzip, deflate, br
   12 RxHeader     c Accept: text/plain, */*; q=0.01
   12 RxHeader     c User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 15_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.3 Mobile/15E148 Safari/604.1
   12 RxHeader     c Referer: https://www.officestocks.com/
   12 RxHeader     c Cache-Control: max-age=1000
   12 RxHeader     c X-Requested-With: XMLHttpRequest
   12 VCL_call     c recv
   12 VCL_acl      c MATCH proxyIps 127.0.0.2
   12 VCL_return   c lookup
   12 VCL_call     c hash
   12 Hash         c /do_ajax.php?action=get-dom
   12 Hash         c www.officestocks.com
   12 Hash         c 443
   12 Hash         c 
   12 VCL_return   c hash
   12 HitPass      c 1374630098
   12 VCL_call     c pass pass
   12 Backend      c 24 default default
   12 TTL          c 1374630903 RFC 0 -1 -1 1646425258 0 1646425257 442645200 0
   12 VCL_call     c fetch
   12 TTL          c 1374630903 VCL -0 120 -1 1646425258 -1
   12 TTL          c 1374630903 VCL 121 120 -1 1646425258 -1
   12 VCL_return   c hit_for_pass
   12 ObjProtocol  c HTTP/1.1
   12 ObjResponse  c OK
   12 ObjHeader    c Date: Fri, 04 Mar 2022 20:20:57 GMT
   12 ObjHeader    c Server: Apache/2.2.15 (CentOS)
   12 ObjHeader    c X-Robots-Tag: noindex
   12 ObjHeader    c X-Content-Type-Options: nosniff
   12 ObjHeader    c Expires: Wed, 11 Jan 1984 05:00:00 GMT
   12 ObjHeader    c Cache-Control: no-cache, must-revalidate, max-age=0
   12 ObjHeader    c X-Frame-Options: SAMEORIGIN
   12 ObjHeader    c Referrer-Policy: strict-origin-when-cross-origin
   12 ObjHeader    c Content-Encoding: gzip
   12 ObjHeader    c Content-Type: text/html; charset=UTF-8
   12 Gzip         c u F - 26 0 80 128 138
   12 VCL_call     c deliver deliver
   12 TxProtocol   c HTTP/1.1
   12 TxStatus     c 200
   12 TxResponse   c OK
   12 TxHeader     c Server: Apache/2.2.15 (CentOS)
   12 TxHeader     c X-Robots-Tag: noindex
   12 TxHeader     c X-Content-Type-Options: nosniff
   12 TxHeader     c Expires: Wed, 11 Jan 1984 05:00:00 GMT
   12 TxHeader     c Cache-Control: no-cache, must-revalidate, max-age=0
   12 TxHeader     c X-Frame-Options: SAMEORIGIN
   12 TxHeader     c Referrer-Policy: strict-origin-when-cross-origin
   12 TxHeader     c Content-Encoding: gzip
   12 TxHeader     c Content-Type: text/html; charset=UTF-8
   12 TxHeader     c Content-Length: 26
   12 TxHeader     c Accept-Ranges: bytes
   12 TxHeader     c Date: Fri, 04 Mar 2022 20:20:58 GMT
   12 TxHeader     c X-Varnish: 1374630903
   12 TxHeader     c Via: 1.1 varnish
   12 TxHeader     c Connection: close
   12 TxHeader     c X-Age: 0
   12 TxHeader     c X-Cache: MISS
   12 TxHeader     c X-Pragma: 
   12 TxHeader     c X-Cache-Control: 
   12 TxHeader     c X-Stock: 
   12 TxHeader     c X-URL: /do_ajax.php?action=get-dom
   12 TxHeader     c X-Auth: 
   12 TxHeader     c X-IP: 
   12 Length       c 26
   12 ReqEnd       c 1374630903 1646425257.592263222 1646425258.176410437 0.000068903 0.584094763 0.000052452
   12 SessionClose c Connection: close

因此,我在调试时发现 varnish 正在执行缓存查找,但结果是返回了一个 hit-for-pass 对象。但是在这里阅读了一些关于它的信息后: https ://stackoverflow.com/questions/12691489/varnish-hit-for-pass-means如果我理解正确,我看到它没有缓存由于高流量,有没有办法强制清漆缓存对象?

我看到这样的事情,但我不知道如何在我的清漆配置中覆盖它:

   12 TxHeader     c Expires: Wed, 11 Jan 1984 05:00:00 GMT

刚刚看到这个,但它并没有帮助我确定问题可能是什么:

https://stackoverflow.com/questions/35449723/varnish-what-is-causing-hit-for-pass

varnish
  • 1 1 个回答
  • 47 Views

1 个回答

  • Voted
  1. Best Answer
    Thijs Feryn
    2022-03-08T01:44:36+08:002022-03-08T01:44:36+08:00

    您的后端返回一个Cache-Control: no-cache, must-revalidate, max-age=0明确告诉 Varnish 不要缓存的标头。

    我最初的建议是确保/do_ajax.php?action=get-dom资源返回一个Cache-Control允许缓存的标头。

    如果这是不可能的,你总是可以使用下面的 VCL 代码来强制缓存:

    sub vcl_backend_response {
        if(bereq.url == "/do_ajax.php?action=get-dom") {
            unset beresp.http.Expires;
            set beresp.http.Cache-control = "public, max-age=3600";
            set beresp.ttl = 1h;
            return(deliver);
        }
    }
    

    重要提示:根据您的varnishlog命令输出,我可以看到您使用的是过时版本的 Varnish。你能确保你在 Varnish 6 或 7 上吗?有关下载和安装说明,请参阅https://www.varnish-software.com/developers/downloads/。

    • 0

相关问题

  • 清漆配置仅缓存未登录用户

  • Varnish 缓存如何处理不同的域?

  • 缩放大文件下载?

  • Gzip 与反向代理缓存

  • 在 Windows XP 主机上使用虚拟化 linux 来宾评估 Varnish 的最简单方法是什么?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve