必需的命令行参数

启动Varnish时必须设置两个命令行参数,它们是:

  • 从哪个TCP端口为HTTP提供服务,以及

  • 在那里可以联系到后端服务器。

如果您已经使用提供的操作系统绑定包安装了Varnish,您将在以下位置找到启动选项:

  • Debian、Ubuntu: /etc/default/varnish

  • 红帽、CentOS: /etc/sysconfig/varnish

  • 免费BSD: /etc/rc.conf (另请参阅:/usr/local/etc/rc.d/varnishd)

‘-a’ listen_address

‘-a’参数定义Varnish应该侦听哪个地址,并为来自哪个地址的HTTP请求提供服务。

您很可能希望将其设置为“:80”,这是众所周知的HTTP端口。

您可以指定多个用逗号分隔的地址,如果您愿意,也可以使用数字或主机/服务名称,Varnish将尝试打开并服务尽可能多的地址,但如果没有一个地址无法打开, varnishd 不会启动。

以下是一些示例:

-a :80
-a localhost:80
-a 192.168.1.100:8080
-a '[fe80::1]:80'
-a '0.0.0.0:8080,[::]:8081'

如果您的Web服务器运行在同一台计算机上,则必须首先将其移动到另一个端口号。

‘-f’ VCL-file 或‘-b’ backend

Varnish需要知道在哪里可以找到它正在缓存的HTTP服务器。您可以使用‘-b’参数指定它,也可以将它放在您自己的VCL文件中,该文件使用‘-f’参数指定。

使用‘-b’是一种快速入门的方法:

-b localhost:81
-b thatotherserver.example.com:80
-b 192.168.1.2:80

请注意,如果您指定了一个名称,它最多只能解析为一个IPv4 and 一个IPv6地址。

对于更高级的用法,您需要使用 -f ,但您可以从以下几个方面开始:

backend default {
        .host = "localhost:81";
}

顺便说一句, precisely ‘-b’的作用。

可选参数

有关命令行参数的完整列表,请参阅 varnishd(1) options