Varnish URL sort
C Shell Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
main
vmod
.gitignore
LICENSE
README
url_load_test.rb
urlsort.c
urlsort.vcl
urlsort_inline.vcl

README

Contents:

./main  - the urlsort program with main() for cli use and as embedded varnish C code 
./vmod  - the urlsort program as a Varnish module

Building the module (the RST2MAN is optional):
cd vmod
VARNISHSRC=~/Source/varnish-3.0.2 VMODDIR=/usr/local/lib/varnish/vmods/ RST2MAN=/opt/local/bin/rst2man-2.7.py ./configure
make
sudo make install

Add to default.vcl:
include "urlsort.vcl";

And copy urlsort.vcl to your varnish directory:
cp urlsort.vcl /usr/local/etc/varnish

If you want an easy way to see if you had a cache hit or miss,
add the following to default.vcl:

sub vcl_deliver {
 
  if (obj.hits > 0) {
    set resp.http.X-Varnish-Cache = "HIT";
  }
  else {
    set resp.http.X-Varnish-Cache = "MISS";
  }
 
  return (deliver);
}

Restart varnish:
sudo killall varnishd 
sudo varnishd -f /usr/local/etc/varnish/default.vcl