The varnishd daemon accepts HTTP requests from clients, passes them on to a backend server and caches the returned documents to better satisfy future requests for the same document.
-C | Print VCL code compiled to C language and exit. Specify the VCL file to compile with the -f option. |
-d | Enables debugging mode: The parent process runs in the foreground with a CLI connection on stdin/stdout, and the child process must be started explicitly with a CLI command. Terminating the parent process will also terminate the child. |
-f config | Use the specified VCL configuration file instead of the builtin default. See vcl(7) for details on VCL syntax. When no configuration is supplied varnishd will not start the cache process. |
-F | Run in the foreground. |
-g group | Specifies the name of an unprivileged group to which the child process should switch before it starts accepting connections. This is a shortcut for specifying the group run-time parameter. |
-i identity | Specify the identity of the Varnish server. This can be accessed using server.identity from VCL |
-n name | Specify the name for this instance. Amonst other things, this name is used to construct the name of the directory in which varnishd keeps temporary files and persistent state. If the specified name begins with a forward slash, it is interpreted as the absolute path to the directory which should be used for this purpose. |
-P file | Write the process’s PID to the specified file. |
See Storage Types in the Users Guide for more information on the various storage backends. This option can be used multiple times to specify multiple storage files. Names are referenced in logs, vcl, statistics, etc.
-S file | Path to a file containing a secret used for authorizing access to the management port. |
-t ttl | Specifies a hard minimum time to live for cached documents. This is a shortcut for specifying the default_ttl run-time parameter. |
-u user | Specifies the name of an unprivileged user to which the child process should switch before it starts accepting connections. This is a shortcut for specifying the user runtime parameter. If specifying both a user and a group, the user should be specified f.txt. |
-V | Display the version number and exit. |
The following hash algorithms are available:
The following storage types are available:
syntax: file[,path[,size[,granularity]]]
The file backend stores data in a file on disk. The file will be accessed using mmap.
syntax: persistent,path,size
Persistent storage. Varnish will store objects in a file in a manner that will secure the survival of most of the objects in the event of a planned or unplanned shutdown of Varnish. The persistent storage backend has multiple issues with it and will likely be removed from a future version of Varnish.
If the -T option was specified, varnishd will offer a command-line management interface on the specified address and port. The recommended way of connecting to the command-line management interface is through varnishadm(1).
The commands available are documented in varnish(7).
Runtime parameters are marked with shorthand flags to avoid repeating the same text over and over in the table below. The meaning of the flags are:
Here is a list of all parameters, current as of last time we remembered to update the manual page. This text is produced from the same text you will find in the CLI if you use the param.show command, so should there be a new parameter which is not listed here, you can find the description using the CLI commands.
Be aware that on 32 bit systems, certain default values, such as workspace_client (=16k), thread_pool_workspace (=16k), http_resp_size (=8k), http_req_size (=12k), gzip_stack_buffer (=4k) and thread_pool_stack (=64k) are reduced relative to the values listed here, in order to conserve VM space.
The varnishd daemon was developed by Poul-Henning Kamp in cooperation with Verdens Gang AS and Varnish Software.
This manual page was written by Dag-Erling Smørgrav with updates by Stig Sandbeck Mathisen <ssm@debian.org>.
This document is licensed under the same licence as Varnish itself. See LICENCE for details.