varnish 4.0 官方文档翻译7-用户手册-重要命令行参数

重要的命令行参数

当启动varnish时有两个重要的参数你必须设置:

一个是处理http请求的tcp监听端口,另一个是处理真实请求的后端server

如果你使用操作系统自带的包管理工具安装的varnish,你将在下面的文件找到启动参数:

Debian, Ubuntu: /etc/default/varnish
Red Hat, Centos: /etc/sysconfig/varnish
FreeBSD: /etc/rc.conf (See also: /usr/local/etc/rc.d/varnishd)

‘-a‘ listen_address

‘-a‘ 参数定义了varnish监听在哪个地址,并用该地址处理http请求

你可能想设置这个参数在众所周知的http 80端口.

你也指定多个地址用逗号隔开就行了,你可以使用数字或者主机/服务名只要你喜欢,varnish尝试打开,如果不能打开,varnish将不能启动.

例子:

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

如果你的webserver和varnish运行在同一台机器,你必须换一个监听地址.

‘-f‘ VCL-file or ‘-b‘ backend

-f添加vcl文件,-b定义后端server

varnish需要知道从哪里找到这个需要缓存的http server.你可以用-b参数指定,或者帮把它放在vcl文件中,然后使用-f参数指定.

在启动的时候使用-b是一个快捷的方式.

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

注意:如果你指定的是name,这个name必须能解析成一个IPv4或者IPv6的地址

如果你使用-f参数,你启动的时候可以在-f指定的vcl文件中包含,像这样:

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

这恰恰是-b参数做的事

这两种情况下都是将配置参数追加到内建的VCL代码.


其他选项

Varnish拥有大量的有用的命令行参数.我们建议你学习他们但是没必要全部使用,如果仅仅是启动,这些是足够了的.

默认的varnish使用100M的内存来缓存对象,如果你想缓存更多,你应当查看-s参数.

如果你运行一个大的web站点,你可能想使用-p参数调整work线程的数量,但是我们通常不建议这样做除非你需要这样.

在部署到生产环境前,如果你限制管理权限,你可能需要重新查看Security First章节 查看OPTIONS获得全部的命令行参数

时间: 2024-11-03 05:29:00

varnish 4.0 官方文档翻译7-用户手册-重要命令行参数的相关文章

varnish 4.0 官方文档翻译7-用户手册-安全第一

Security first 安全第一 如果你仅仅抓专注于运行varnish,或者所有人都是这个观点,那么就可以跳过该节了.我们保护你的方方面面当http请求来的时候. 如果你的web基础设施是外包的,管理是分开的,那么你就需要考虑安全了. Varnish在4个权威的等级提供安全,大致关系到怎样让命令生效和在哪儿生效. the command line arguments, the CLI interface, VCL programs, and HTTP requests. Command l

varnish 4.0 官方文档翻译5-varnish概况

The Big Varnish Picture varnish概况 本节将回答这个问题:"varnish"到底是什么,命名的点点滴滴. varnish两个主要的部分是在varnisd项目中的两个进程.第一个进程被叫做"the manager",主要功能是告诉你,系统管理员,发生了什么. 第二个进程被叫做"the worker"或者是"the child",这个进程是实际处理你http请求的进程. 当你启动varnishd,ma

VC 6.0和CodeBlocks中如何设置命令行参数

VC 6.0 可以在IDE中设置好命令行参数,然后再运行.做法如下: 选择project下拉菜单的settings... 出现如下窗口,选中右边的debug标签,然后在Program arguments中填入相关命令行参数(注意argv[0]不需要填),点OK按钮确认. 然后运行就可以了. CodeBlocks 选择Project菜单下的Set program's arguments..., 如图 在Program arguments 文本框敲入相应的参数即可,argv[0]不需要填, 然后点击

varnish 4.0 官方文档翻译-简要教程

varnish 4.0简要教程 这部分教程包含了varnish基本原理.囊括了什么是varnish.它怎样工作,同时也包含了开始使用和运行varnish.这部分过后你可能想继续了解用户向导(varnish用户引导). 如果你正在web上读这些呢 注意每页左边的Next topic和Previous topic The fundamentals of web proxy caching with Varnish使用varnish作为web代理缓存的原理 Supported platforms 支持

varnish 4.0 官方文档翻译9-用户手册- 向Vanish下发指令

CLI-bossing Varnish around CLI 向Vanish下发指令 一旦vanish启动,你可以使用命令行接口来控制它. 最轻松的使用CLI的方法是在运行varnishd的机器上运行,varnishadm varnishadm help 如果你想远程使用varnishadm,有两种方法. 你可以使用ssh登录到运行varnishd的机器上然后varnishadm ssh $http_front_end varnishadm help 同时你也可以配置vanishd接受远程的CL

varnish 4.0 官方文档翻译21-Reporting and statistics

Reporting and statistics 本部分包括如何查看Varnish正在做什么,从每个http请求流的详细记录到汇总统计计数器. Logging in Varnish Statistics varnishtop varnishhist varnishstat Logging in Varnish Varnish中一个很棒的特点是工作日志的记录方式.varnish不记录日志到日志文件,而是调用VSL记录到共享内存片段,VSL-varnish共享日志.当这个片段被写完后,varnish

varnish 4.0 官方文档翻译20-Device detection

Device detection 设备检测基于请求中的User-agent找出哪种内容返回给客户端. 使用Device detection情况的一个例子,发送给小屏幕的手机客户端或者复杂的网络环境,减少发送文件的数量,或者提供给不能解码的客户端一个video解码器. 有些使用这种方案的典型场景: 重写url 使用不同的后端给客户端 改变后端请求为了让后端发送裁剪的内容 可能为了便于理解,下文中假定req.http.X-UA-Device头表示当前前客户端,同时每种客户端是唯一的. 简单的像这样设

varnish 4.0 官方文档翻译19-VCL Examples

VCL Examples Manipulating request headers in VCL 在VCL中操作请求的header. 当我们想移除发送到web服务器/images目录的所有对象的cookie可以这样: sub vcl_recv {     if (req.url ~ "^/images") {     unset req.http.cookie;     } } 这样当请求被后端处理时在http的header中将不再有cookie信息.有用的是使用if语句.在匹配的UR

varnish 4.0 官方文档翻译22-Varnish Website Performan

Varnish and Website Performance 本节集中解决如何调优varnish server,同时如何使用varnish优化你的web站点. 一共有三小节.第一小节你应该想到varnish的各种工具和功能,下一小节如何从cache中清除已经缓存的内容.清除内容是一项基本功能,因为它允许给缓存的对象增加 TTL.TTL越大varnish保持在缓存中的时间越久,这意味着varnish处理更多的请求,只将少部分的请求传递到相对较慢的后端. 最后一小节,处理web内容的压缩.当从后端