[Pkg-varnish-devel] Bug#704435: varnish: Pushing vcls failed:#012CLI communication error (hdr)

Rune K. Svendsen runesvend at gmail.com
Mon Apr 1 04:55:16 UTC 2013


Package: varnish
Version: 3.0.2-2
Severity: normal

Dear Maintainer,

   * What led up to the situation?
I need to run Varnish on a Raspberry Pi.

   * What exactly did you do (or not do) that was effective (or
     ineffective)?
Starting Varnish, via "service start".

   * What was the outcome of this action?
Starting Varnish puts the following in my syslog:

Apr  1 06:40:17 raspberrypi varnishd[28809]: Platform: Linux,3.6.11+,armv6l,-smalloc,-smalloc,-hcritbit
Apr  1 06:40:17 raspberrypi varnishd[28809]: child (28811) Started
Apr  1 06:40:17 raspberrypi varnishd[28809]: Pushing vcls failed:#012CLI communication error (hdr)
Apr  1 06:40:17 raspberrypi varnishd[28809]: Stopping Child
Apr  1 06:40:17 raspberrypi varnishd[28809]: Child (28811) died signal=11
Apr  1 06:40:17 raspberrypi varnishd[28809]: Child (-1) said Child starts
Apr  1 06:40:17 raspberrypi varnishd[28809]: Child cleanup complete

And the result is that Varnish just sits in the background, not listening on port 80, as is specified in my config file.

   * What outcome did you expect instead?
Varnish listening on port 80 for incoming request.


-- System Information:
Debian Release: 7.0
Architecture: armhf (armv6l)

Kernel: Linux 3.6.11+ (PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages varnish depends on:
ii  adduser               3.113+nmu3
ii  gcc                   4:4.6.3-8
ii  libc6                 2.13-38+rpi1
ii  libc6-dev [libc-dev]  2.13-38+rpi1
ii  libedit2              2.11-20080614-5
ii  libgcc1               1:4.7.2-5+rpi1
ii  libncurses5           5.9-10
ii  libpcre3              1:8.30-5
ii  libtinfo5             5.9-10
ii  libvarnishapi1        3.0.2-2

varnish recommends no packages.

Versions of packages varnish suggests:
pn  varnish-doc  <none>

-- Configuration Files:
/etc/default/varnish changed:
START=yes
NFILES=131072
MEMLOCK=82000
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s malloc,16M \
-l 8m,1m,+ \
-u varnishd"

/etc/varnish/default.vcl changed:
backend default {
    .host = "127.0.0.1";
    .port = "8080";
	.connect_timeout = 600s;
	.first_byte_timeout = 600s;
	.between_bytes_timeout = 600s;
	.max_connections = 800;
}
acl purge {
        "localhost";
}
sub vcl_recv {
	set req.grace = 2m;
  # Set X-Forwarded-For header for logging in nginx
  remove req.http.X-Forwarded-For;
  set    req.http.X-Forwarded-For = client.ip;
  # Remove has_js and CloudFlare/Google Analytics __* cookies.
  set req.http.Cookie = regsuball(req.http.Cookie, "(^|;\s*)(_[_a-z]+|has_js)=[^;]*", "");
  # Remove a ";" prefix, if present.
  set req.http.Cookie = regsub(req.http.Cookie, "^;\s*", "");
if (req.url ~ "/wp-(login|admin|cron)") {
        # Don't cache, pass to backend
        return (pass);
}
set req.http.Cookie = regsuball(req.http.Cookie, "wp-settings-1=[^;]+(; )?", "");
set req.http.Cookie = regsuball(req.http.Cookie, "wp-settings-time-1=[^;]+(; )?", "");
set req.http.Cookie = regsuball(req.http.Cookie, "wordpress_test_cookie=[^;]+(; )?", "");
if (req.url ~ "wp-content/themes/" && req.url ~ "\.(css|js|png|gif|jp(e)?g)") {
    unset req.http.cookie;
}
if (req.url ~ "/wp-content/uploads/") {
    return (pass);
}
if (req.http.Cookie ~ "wordpress_" || req.http.Cookie ~ "comment_") {
        # A wordpress specific cookie has been set
    return (pass);
}
	# allow PURGE from localhost
	if (req.request == "PURGE") {
		if (!client.ip ~ purge) {
			error 405 "Not allowed.";
		}
		return (lookup);
	}
	# Force lookup if the request is a no-cache request from the client
	if (req.http.Cache-Control ~ "no-cache") {
		return (pass);
	}
return (lookup);
}
sub vcl_fetch {
	#set obj.grace = 5m;
    set beresp.grace = 2m;
}
sub vcl_hit {
        if (req.request == "PURGE") {
                purge;
                error 200 "Purged.";
        }
}
sub vcl_miss {
        if (req.request == "PURGE") {
                purge;
                error 200 "Purged.";
        }
}


-- no debconf information



More information about the Pkg-varnish-devel mailing list