问题标签 [varnish-4]
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.
varnish - 我可以在 Varnish 4 中创建自定义值列表,例如 ACL 吗?
我正在使用 Varnish 版本 4。我想知道 VCL 是否允许自定义和可重用的值列表,例如ACL
. 我想用它来检查访问者的 cookie。如果他是版主,请不要提供缓存内容。
饼干字符串:
代码:
regex - 正则表达式问题通过 curl 向 Varnish 服务器发送 BAN 请求
我一直在尝试通过服务器向无效的缓存内容发送BAN
请求。该 url 包含一些供 Varnish 检查的正则表达式。我已成功发送此请求:curl
Varnish
1.
curl -X BAN "https://oursite.com/product/item/(100|7|9||8|7|6|5|4|2|1)"
但有一个更复杂的网址
2.
curl -X BAN "https://oursite.com/product/(search/home$|item/(391|1232))"
默认.vcl
清漆日志:
curl 请求已成功发出,如图所示varnishlog
,但我不知道为什么正则表达式不起作用。没有任何页面被清除。谁能告诉我有什么问题?我需要逃脱哪些角色?
dns - Docker-Compose Networking - DNS 返回多个不准确的 IP 地址
我使用 Docker-Compose 的实验性 --x-networking 功能建立了一个项目,并且在 compose 创建的专用网络上运行 DNS 查找时遇到了一个奇怪的问题。
当我执行 ping 或 ip 命令或查看 /etc/hosts 时,我看到的一切都符合我的预期。但是进行 DNS 查找的工具(例如 Varnish on startup 或 dig)正在返回奇怪的结果。
它们不是从 /etc/hosts 返回值,而是返回一对 IP 地址,这两个都不是实际的。
我正在运行 docker-compose 版本 1.5.2,在 Mac OS X 上构建 7240ff3。
这是我的 docker-compose.yml:
从 my_varnish 容器 /etc/hosts:
这是 Dig 输出(CentOS 7 图像):
据我所知,这两个 IP 地址与任何事情都没有任何关系,它们实际上不起作用。此外,我挖掘的每个主机都会得到相同的两条 A 记录。
诀窍是 Varnish 不会启动,因为它会进行一次性 DNS 查找并为后端找到两个(伪造的)地址。
对这里可能发生的事情有任何猜测吗?
干杯!
nginx - 如何增加 Varnish 4 和 Nginx 之间的超时时间
在问这个问题之前,我在谷歌和任何地方搜索了几个小时,试图增加 Varnish 4 和 Nginx 之间的连接超时,但没有找到解决方案。
所以这是我的清漆配置:
这是 Nginx 配置:
我尝试了所有参数,但没有任何效果。
当我设置keepalive_timeout
为 300s 时,如果我直接访问它,超时设置为 300s(5 分钟),但是当我通过 Varnish 访问时,超时设置为 60s。所以我禁用了 Nginxkeepalive_timeout
并将其设置为 0,但遇到了同样的问题。
怎么了?
如何增加 Varnish 和 Nginx 之间的超时时间?
varnish - 制作varnish log time_firstbyte及处理
我正在time_firstbyte
尝试handling
通过varnishncsa
.
我的/etc/init.d/varnishncsa
样子如下:-
我的/etc/default/varnishncsa
样子如下:-
但是在尝试重新启动varnishncsa
时它失败了。
我在 ubuntu 12.04 和 varnish 4.1 上。
varnish - 清漆的日志位置
我已经阅读了这篇文章。有人可以帮我澄清以下关于 varnish 的各种日志位置的疑问吗?
- 根据 varnish 电子书 varnishncsa -显示 Varnish 访问日志和 varnishlog 用于访问特定于请求的数据。有人可以让我知道什么日志然后进入
/var/log/messages
&/var/log/syslog
吗? - 当清漆由于恐慌而崩溃时,清漆将在哪里转储日志/跟踪?我知道
panic.show
在 cli 中显示恐慌消息。有没有办法可以查看某些文件中的恐慌消息? - 当清漆由于段错误而崩溃时,清漆会将消息和核心转储放在哪里?
- 如何将 503 / Guru Meditation错误转储到文件中?
我对基于 Debian 的系统中的 varnish 4.1 有这些疑问。
varnish - 使用多个清漆后端无需停机部署
我们有一组带有多个后端的 varnish 服务器,我们希望在更新后端代码时实现无停机部署。
我们做了一些研究,这就是我们所做的:
出于某种原因,这仍然在部署期间给我们带来了 503 错误。如果这是正确的方法,有人可以建议吗?如果错了,我们该怎么办?
非常感谢!
varnish - 在清漆中获得随机的“http first read error:EOF”错误
我不时在日志中看到以下 503 清漆错误:
问题不在于后端连接,因为从清漆服务器卷曲到相同的 URL 可以正常工作。清漆的版本是 4.1.0。我不确定“http 首次读取错误:EOF”是什么意思,对此问题的任何说明表示赞赏。由于这个问题的随机性,我也没有办法重现它。
wordpress - 503 后端获取失败,varnish 4.1 和 WordPress 4.4
我有一个 503 错误,其中包含多个varnish 4
主机WordPress 4.4
。
虚拟服务器,到server_1和server_2。(我只复制一个,因为两者的VS相同,x等于服务器编号)。
默认.vcl
当我尝试进入任何服务器时,我得到503 Backend fetch failed,但是当我通过单独的服务器(http://server_1.localhost
和http://server_2.localhost
)输入时返回200
代码。
varnish - Varnish 4 在清除或禁止时是否使用哈希键来查找对象?
当 varnish 通过Purge
and使缓存失效时Ban
,它是否使用 vcl_hash 中定义的哈希键来帮助查找对象?如果我要通过自定义标头obj.http.page_id
而不是本文obj.http.url
推荐的方式使缓存无效,由于不使用散列键,它会影响性能吗?我在文档中没有看到任何提及这一点,但想在使用新方法之前说清楚。http.page_id