问题标签 [varnish-vcl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
7501 浏览

reverse-proxy - 使用清漆缓存的 gzip 压缩

我正在尝试使用清漆缓存提供 gzip 压缩。但是,当我使用下面提到的清漆配置(default.vcl)将内容编码设置为 gzip 时。浏览器无法下载我将内容编码设置为 gzip 压缩的那些内容。

清漆配置文件:

响应标头:

关于如何修复它以及如何使用 varnish 提供 gzip 压缩的任何建议。

0 投票
4 回答
7051 浏览

varnish - 清漆 vcl 有选择地清除缓存

所以我第一次使用清漆。我花了很长时间阅读它是如何工作的,但我无法弄清楚如何有选择地清除缓存。

比如说我有这样的网址

和另一个喜欢

我需要在哪里清除缓存account=123

我只能弄清楚发出 purge on

/?account=123&url=stackoverflow.com

只会使用 PURGE 方法清除 url 与传入 url 匹配的缓存。

任何帮助表示赞赏。

0 投票
4 回答
7568 浏览

varnish - 清漆不处理 ESI 包括

我正在尝试设置 Varnish 以处理本地环境中的 ESI 包含。

我在虚拟机中运行清漆,内容在主机上运行。

我有两个文件“index.html”和“test.html”。它们都存储在 apache 服务器的 docroot 中名为“esi”的文件夹中。

索引.html

测试.html

Varnish 在虚拟机的 8000 端口上运行。所以我在这里访问它:http: //192.168.56.101 :8000/esi/

在虚拟机上的 /etc/varnish/default.vcl 中,我已将以下配置添加到文件底部:

考虑到它应该处理所有请求的 ESI(不要关心它是否只是试图让这个东西工作的不好的做法:))

我加载http://192.168.56.101:8000/esi/时的结果是:

IE。ESI 显示在标记中,它没有被处理。

我检查了 Varnish 日志,但是那里没有错误,也没有与 ESI 相关的内容。

谁能看到我在这里做错了什么?让我知道是否需要更多信息..谢谢

0 投票
1 回答
1034 浏览

caching - 用清漆处理 jsonp

我尝试配置清漆,以便它可以处理 jsonp。
我使用这个来源作为基本概念:https ://gist.github.com/640331

我正在使用 varnish 3.0.2 所以我最终得到了这个

向服务器发送请求后:

我得到以下信息:

安装:

系统日志输出:

如何评估 esi 请求以获取 json?

0 投票
1 回答
2634 浏览

varnish - Varnish VCL & Req.Url 匹配重定向

我目前为一般缓存等设置 Varnish,但也充当我们网站移动版本的重定向。

它工作得很好(就像 Varnish 一样!)并按预期重定向。我决定向 VCL 配置添加功能,不仅将手机重定向到网站的移动版本,而且还将访问移动网站链接的桌面(例如,在 Google 上)重定向到网站的桌面版本。

但是,我似乎无法以最令人费解的方式让它发挥作用。这是VCL:

# 忽略某些共享资源 if (req.url !~ ".(jpg|png|gif|gz|tgz|bz2|tbz|mp3|ogg|css)$") {

这里的逻辑有明显的错误吗?我可以看到没有任何 cookie 或任何其他可能干扰重定向的东西。如果有人对此有任何见解,我将永远感激不尽:)最好的问候B

0 投票
2 回答
2691 浏览

varnish - 清漆缓存中的无限重定向循环

我们最近将 Varnish 放在了 Drupal 前面,因为服务器负载很重,总的来说我们很高兴。

剩下的唯一问题是我们有时在缓存数据中存在无限重定向循环。我们通过 HTTP 监控发现了这一点。我们每分钟检查一次首页。缓存中的页面有时包含完整的首页,但设置了 Location 标头,这会将用户再次发送到首页。

我们不太确定是什么导致了这种情况,但也不知道如何追踪它。当然,处理这个问题的最好方法是在 drupal 方面,但我们无法真正说出为什么会发生这种情况。

发生这种情况时,有没有办法记录案例?或者是否可以在清漆中检测到这一点并将当前缓存内容标记为无效?

当然,我们不希望总是将有意的重定向传递给源服务器,而是那些会导致无限循环的重定向。

我希望听到一些想法,我们可以如何进一步追踪这一点。许多人提前感谢各种提示。

0 投票
1 回答
1113 浏览

caching - 清漆连接错误

我有这个 vcl varnish 配置文件,但是当我想从应用程序服务器中清除它时它会引发错误。有什么问题吗?

我有 5 个应用程序服务器,除了管理员和论坛之外的所有内容都被缓存,但是,当我从应用程序服务器中清除用户时,它会引发此错误:无法在 192.168.11.41:6082 上连接到 varnishadm;“连接被拒绝”

0 投票
1 回答
4240 浏览

caching - Varnish 3.0 返回 503 错误

我正在使用清漆来缓存我网站的内容。它按预期工作,但有一个问题。随机返回一个 503 错误,这真的很奇怪,因为应用程序服务器正常,负载低于 0.8,数据库服务器也正常。这是我的配置的一部分:

我是否还必须添加到 if beresp.status == 503?

0 投票
1 回答
340 浏览

ruby-on-rails-3 - varnish rails 设计注销配置

我在前端使用清漆作为缓存服务器,并且带有乘客的 apache2 在我的 rails3 应用程序的后端运行。我正在使用设计 gem 进行身份验证,但我无法退出。

我认为清漆有一个选项可以清除登录的用户会话或 cookie。我想知道清漆配置,以便我可以注销。

这是我的清漆配置:

0 投票
1 回答
610 浏览

django - Django 和清漆

我目前正在使用 django(非常复杂的数据结构)开发一个大型网站,原生负载支持极低(4 req/s),这是不可接受的,建议我使用 varnish 来加速我的应用程序。现在这就是问题所在,我在整个站点中都使用了 memcache,我可能会添加相当多的内容(几乎每个查询都会被 memcached)。我无法使用中间件,因为网站的某些部分是每个用户动态的。现在我遇到的真正问题是每个用户都需要缓存很多页面,如果有 cookie 来回传输,varnish 不会缓存页面,我想知道是否有办法为每个用户代理缓存页面,如果这真的有效,如果不是,