gpt4 book ai didi

apache - Varnish绕过大文件

转载 作者:行者123 更新时间:2023-12-03 17:45:15 25 4
gpt4 key购买 nike

我在我的 Apache Web 服务器上安装了默认设置的 Varnish。 Apache 列表到端口 8080,Varnish 列表到 80。

我在网站上几乎没有大小为 100MB、500MB 和 1GB 的可下载文件

1GB 不工作,当你点击它时它会说不可用页面或连接被服务器关闭。其他两个工作正常,但我不确定这是否是下载它们的正确方法。

我如何让 Varnish 绕过这些文件并直接从 Web 服务器获取它们?

谢谢。

最佳答案

这可以通过检查后端答案中的 Content-Length 来完成,如果它大于某个大小,则用一些标记标记它并重新启动请求交易

例如,Content-Length >=10,000,00 的文件应该通过管道传输:

sub vcl_fetch {
..
if ( beresp.http.Content-Length ~ "[0-9]{8,}" ) {
set req.http.x-pipe-mark = "1";
return(restart);
}
..
}

然后我们返回检查请求接收和解析。在这里我们可以检查我们的标记并执行 pipe

sub vcl_recv {
..
if (req.http.x-pipe-mark && req.restarts > 0) {
return(pipe);
}
..
}

关于apache - Varnish绕过大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23065255/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com