Checking varnish configuration syntax

If you’ve updated your varnish server’s configuration, there doesn’t seem to be an equivalent of ‘apachectl configtest’ for it, but you can do :

varnishd -C -f /etc/varnish/default.vcl

If everything is correct, varnish will then dump out the generated configuration. Otherwise you’ll get an error message pointing you to a specific line number.


  1. Sometimes it’s the simple things that make life easier. Varnishlogs aren’t what you’d expect so this is a life-saver (especially after an upgrade)

  2. Yep, very helpful command, I was just pulling my hair to find where is the syntax error. Just run the command and found the remedy!

    Thank you!

  3. Brilliant. Thank you very much. Just the command I was hoping to find. Cheers. I knew there must be some way to test varnish, but hadn’t figured out what it was.

  4. Some “guy” in 2012, “This is kind of late…”

    Cut to me in 2021 still referring to this page every few months because I need to check my varnish changes. 🙂

  5. and because I got tired of having my console flying 2k lines (and as w3bd3v having to come back here every now and again) I end up creating an alias

    alias testnreloadvarnish=’error=$(varnishd -C -f /etc/varnish/default.vcl 2>&1) && (echo “default.vcl OK. Reloading varnish…” && systemctl reload varnish && echo “Done.”) || echo “$error”‘

Leave a comment

Your email address will not be published.