Articles of 漆

清漆禁止查询string

我试图设置禁止在光油4.我有这在vcl_recv: ban("req.http.host == " +req.http.host+" && req.url ~ "+req.url); return(synth(200, "Ban added")); 当我提出请求时,它确实说了禁止添加,我确实看到它与varnishadm ban.list: 1499676469.672070 0 req.http.host == something.com && req.url ~ /some/path?q=* 除非它不起作用,否则不会失效。 如果我试图禁止path*它似乎适用于像“path.css”这样的“常规”文件,但是看起来它从不会使基于查询string的URL失效。 还有什么我需要做的是让它考虑查询string? 查询string是相当不可读的,充满了%代码,如果重要的话。 谢谢

清漆标题出现在身体

我们在一个清漆和一些页面上有apache,作为头部的HTML正文部分: HTTP/1.1 200 OK Content-Type: text/html; charset=utf-8 X-T3-Cache-Tags: pageId_2 ETag: "xxxxxxxxxxxxx-gzip" Pragma: public Vary: Accept-Encoding cache-control: max-age=0, must-revalidate Transfer-Encoding: chunked Date: Thu, 14 Sep 2017 12:47:45 GMT Connection: keep-alive X-Cache: HIT <!DOCTYPE html> <html lang="zh-CN"> <head> … 那个回应的标题是 Accept-Ranges:bytes Connection:keep-alive Content-Encoding:gzip Content-Length:7936 Content-Type:text/html; charset=iso-8859-1 Date:Thu, 14 Sep 2017 12:47:46 GMT X-Cache:MISS 可能这是VCL文件中的错误? 但是如何debugging呢?

清漆返回503错误

我正在使用Varnish 5.x版本,因为某些情况下我想绕过清漆caching。 如果请求头中存在特定的cookie,则绕过varnishcaching。 我的vcl_recv如下 if (req.http.Cookie ~ "(^|;\s*)(Cookie1=1)(;|$)") { return (pass); }else if (req.http.Cookie ~ "(^|;\s*)(Cookie2=1)(;|$)") { return (pass); }else { unset req.http.Cookie; } 与上面的实现清漆开始抛出503错误,如果我评论返回(通行)线,然后开始正常工作,如预期。 请帮助我了解我在这里做了什么错误。

可以将多个后端并行的请求发送到多个后端?

我们在没有任何交易的情况下提供大量的“只读”数据,但有时候应用程序服务器可能由于我们无法控制的不可重复的原因而失败(不要问)。 我们有多个这样的服务器configuration为后端,但是 – 有空闲的容量。 我们可以通过某种方式告诉Varnish尝试同样的请求,而不是一个,而是两个 并行的后端 – 然后返回/caching来自服务器的结果,这个结果是首先回应的,没有错误? 我知道,Varnish在失败时可以“重新启动”一个请求 – 针对不同的后端。 但是那意味着依次尝试。 它可以并行吗?

在Apache2,Cpanel上清除caching

我正在运行一个带有5个站点的Cpanel VPS。 我只想使用Varnish Cache一个站点。 任何人都可以证实这是可能的? http://www.varnish-cache.org/

在页面请求清漆清除

我没有清漆的经验。 我想设置清漆做一些非常基本的事情:我有两页 http://mysite.com/ http://mysite.com/additem 我想cachinghttp://mysite.com/additem 10分钟和http://mysite.com/ 1分钟,但每当访问http://mysite.com/additem ,我想清理cachinghttp://mysite.com/ 。 任何帮助?

清漆和RAM数量不足

我有一个专用的Varnish服务器来服务数以万计的静态文件。 这台服务器有32GB的RAM。 这些文件占用了几乎所有的RAM,其中绝大多数也是经常使用的,所以我现在站在这个问题之前 – 做什么。 服务器轻松处理请求,但服务文件的数量一直在增加,并且随时都会面临RAM的问题。 添加额外的RAM不是一种select,也可以将部分数据保存在硬盘上。 我决定把一个额外的服务器与相同的参数。 我想在两台服务器之间传播数据。 两台服务器都可以使用HAProxy。 随着存储在caching中的数据量的增长非常迅速,以及他们的轮换,我需要一个解决scheme,将允许我自动分配在两台服务器上的数据。 例如: Varnish1处理站点S1,S3,S5 Varnish2处理站点S2,S4,S6 在出现页面S7时,应该自动附加到最less的服务器上。 同样,当站点消失时,例如S2,数据应该重新分配到服务器以实现最均衡的负载。 在服务器正常运行时也是如此,当一个站点(比如S1)突然消耗比正常多得多的资源时,服务器应该自动地将部分支持的数据转移到其他服务器。 我接受部分复制,即当S1这样的请求数量增加到会阻塞一台服务器的程度时,数据应立即复制到另一台服务器上。 我预测未来会增加数次服务的数据量,以及服务器的数量,光油,所以我不能依靠手持解决scheme。

清漆清除不起作用。 在syslog中有一些错误

在我的服务器,我有清漆设置。 我使用wordpress并安装了w3总caching插件。 我已经设置该插件来清除我的清漆(清漆3)caching。 但它不工作! 在我的系统日志中,有一些像下面显示的错误…请帮助我! Mar 22 21:29:40 kadupul varnishd[3755]: CLI telnet 113.59.222.126 58833 77.81.240.177 6082 Rd GET / HTTP/1.1 Mar 22 21:29:40 kadupul varnishd[3755]: CLI telnet 113.59.222.126 58833 77.81.240.177 6082 Wr 101 Unknown request. Type 'help' for more info. all comm$ Mar 22 21:29:40 kadupul varnishd[3755]: CLI telnet 113.59.222.126 58833 77.81.240.177 6082 Rd Host: […]

清漆传递错误的内容

我安装了清漆,并面对我认为是一个主要问题: 有时几个不同的URL显示相同的caching内容。 如果你进入一个显示错误页面内容的页面,并强制刷新(CTRL + F5),那么你直接从后端获得正确的内容。 例如,而不是显示: 有时它caching: 即使使用默认的VCL文件也会发生这种情况。 为什么发生这种情况? 问候, 这是我的清漆configuration文件: backend default { .host = "127.0.0.1"; .port = "8080"; # We will then configure apache to listen to port 8080 } sub vcl_recv { if (req.restarts == 0) { if (req.http.x-forwarded-for) { set req.http.X-Forwarded-For = req.http.X-Forwarded-For + ", " + client.ip; } else { […]

在Varnish Security中找不到“variables.tcl”文件

Varnish Security main.vcl包含 # clear all internal variables include "/etc/varnish/security/build/variables.vcl"; 和 # fallthrough: clear all internal variables on security.vcl_recv exit include "/etc/varnish/security/build/variables.vcl"; 但是/etc/varnish/security/build/variables.vcl不包含在git中。 我评论说,它工作正常,但我可以在哪里得到该文件?