[Varnish] #149: Can't Purge

Varnish varnish-bugs at projects.linpro.no
Mon Aug 13 09:52:25 CEST 2007


#149: Can't Purge
----------------------+-----------------------------------------------------
 Reporter:  greenad   |        Owner:  phk          
     Type:  defect    |       Status:  closed       
 Priority:  high      |    Milestone:  Varnish 1.0.4
Component:  varnishd  |      Version:  1.0.4        
 Severity:  major     |   Resolution:  worksforme   
 Keywords:            |  
----------------------+-----------------------------------------------------
Changes (by phk):

  * status:  new => closed
  * resolution:  => worksforme

Old description:

> Hi,
>
> this is how I start varnishd:
>
> -a 0.0.0.0:8080 -f /etc/varnish/default.net.vcl -t 120s -s
> file,/var/lib/varnish/varnish_storage.bin,1g
>
> The caching works but I cant purge any files (VCL config is attached).
>
> #varnishncsa
> ....
> 127.0.0.1 - - [13/Aug/2007:09:34:20 +0200] "GET
> http://localhost:8080/users/7238558.jpg HTTP/1.0" 200 1657 "-"
> "Wget/1.10.2"
> ...
>

>
> telnet localhost 8080
> Trying 127.0.0.1...
> Connected to localhost.
> Escape character is '^]'.
> PURGE http://localhost:8080/users/7238558.jpg HTTP/1.0
> HTTP/1.1 404 Not Found
> Date: Mon, 13 Aug 2007 07:35:08 GMT
> Server: Varnish
> Connection: close
> Content-Type: text/html; charset=iso-8859-1
>
> <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
> <HTML>
>   <HEAD>
>     <TITLE>404 Not Found</TITLE>
>   </HEAD>
>   <BODY>
>     <H1>Error 404 Not Found</H1>
>     <P>Not in cache.</P>
>     <H3>Guru Meditation:</H3>
>     <P>XID: 385643636</P>
>     <I><A href="http://www.varnish-cache.org/">Varnish</A></I>
>   </BODY>
> </HTML>
> Connection closed by foreign host.
> root at ubuntu60664m:/tmp#
>

>
> however the file is cached
>
>  wget  --server-response http://localhost:8080/users/7238558.jpg
> --09:35:00--  http://localhost:8080/users/7238558.jpg
>            => `7238558.jpg.8'
> Resolving localhost... 127.0.0.1
> Connecting to localhost|127.0.0.1|:8080... connected.
> HTTP request sent, awaiting response...
>   HTTP/1.1 200 OK
>   Expires: Thu, 16 Aug 2007 07:33:17 GMT
>   Content-Type: image/jpeg
>   Date: Mon, 13 Aug 2007 07:33:17 GMT
>   Server: image_server
>   Content-Length: 1657
>   X-Varnish: 385643448 385641021
>   Age: 103
>   Via: 1.1 varnish
> Length: 1,657 (1.6K) [image/jpeg]
>
> 100%[=====================================================================================================================>]
> 1,657         --.--K/s
>

>

>  varnishd -V
> varnishd (varnish-1.0.4)
> Copyright (c) 2006 Linpro AS / Verdens Gang AS
>

>
> I cant use 1.1 since for some reason I never get a cache_miss ... it
> always return he same file (the first file it served after the varnishd
> restart).

New description:

 Hi,

 this is how I start varnishd:

 -a 0.0.0.0:8080 -f /etc/varnish/default.net.vcl -t 120s -s
 file,/var/lib/varnish/varnish_storage.bin,1g

 The caching works but I cant purge any files (VCL config is attached).
 {{{
 #varnishncsa
 ....
 127.0.0.1 - - [13/Aug/2007:09:34:20 +0200] "GET
 http://localhost:8080/users/7238558.jpg HTTP/1.0" 200 1657 "-"
 "Wget/1.10.2"
 ...



 telnet localhost 8080
 Trying 127.0.0.1...
 Connected to localhost.
 Escape character is '^]'.
 PURGE http://localhost:8080/users/7238558.jpg HTTP/1.0
 HTTP/1.1 404 Not Found
 Date: Mon, 13 Aug 2007 07:35:08 GMT
 Server: Varnish
 Connection: close
 Content-Type: text/html; charset=iso-8859-1

 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <HTML>
   <HEAD>
     <TITLE>404 Not Found</TITLE>
   </HEAD>
   <BODY>
     <H1>Error 404 Not Found</H1>
     <P>Not in cache.</P>
     <H3>Guru Meditation:</H3>
     <P>XID: 385643636</P>
     <I><A href="http://www.varnish-cache.org/">Varnish</A></I>
   </BODY>
 </HTML>
 Connection closed by foreign host.
 root at ubuntu60664m:/tmp#



 however the file is cached

  wget  --server-response http://localhost:8080/users/7238558.jpg
 --09:35:00--  http://localhost:8080/users/7238558.jpg
            => `7238558.jpg.8'
 Resolving localhost... 127.0.0.1
 Connecting to localhost|127.0.0.1|:8080... connected.
 HTTP request sent, awaiting response...
   HTTP/1.1 200 OK
   Expires: Thu, 16 Aug 2007 07:33:17 GMT
   Content-Type: image/jpeg
   Date: Mon, 13 Aug 2007 07:33:17 GMT
   Server: image_server
   Content-Length: 1657
   X-Varnish: 385643448 385641021
   Age: 103
   Via: 1.1 varnish
 Length: 1,657 (1.6K) [image/jpeg]

 100%[=====================================================================================================================>]
 1,657         --.--K/s
 }}}



  varnishd -V
 varnishd (varnish-1.0.4)
 Copyright (c) 2006 Linpro AS / Verdens Gang AS



 I cant use 1.1 since for some reason I never get a cache_miss ... it
 always return he same file (the first file it served after the varnishd
 restart).

Comment:

 You should not put the host part in the PURGE command, try this instead:

 {{{ PURGE /users/7238558.jpg }}}

-- 
Ticket URL: <http://varnish.projects.linpro.no/ticket/149#comment:1>
Varnish <http://varnish.projects.linpro.no/>
The Varnish HTTP Accelerator


More information about the varnish-bugs mailing list