VCL-Varnish Configuation Language
VCL语言是一种小型的domain-specific语言,设计初衷是用来定义Varnish HTTP加速器请求的传递、文件的缓存策略。当一个新的配置被加载了,Varnishd管理进程会将VCL代码翻译成C代码,并且编译成动态链接库(shared object),这样就可以动态的连接到服务进程中去了。
语法:
VCL的语法非常简单,而且特意设计的与C语言Perl语言非常类似。各个模块被花括号分割开,语句末尾用分号结束,注释可以根据你的喜好使用C、C++或者Perl语言风格的注释。
除了C语言风格的赋值号(=),比较(==)布尔操作(!&&和||),VCL还支持常规的表达式以及访问控制列表(ACL:Access Control List)匹配。
不像C和Perl语言,反斜杠符号在VCL语言中没有任何的转义作用,用到的类似于(%xx)的形式就像URL一样,所以你可方便的在常规的表达式中使用,而不会产生任何歧义。
声明通过一套关键字的方式被引入。没有用户定义的变量;数值只可以通过给变量赋值跟后端,文件,请求联系起来。这里大多配置是需要输入进去的而且这些值都必须有相同的后缀单元。
VCL有if条件判断,但是没有循环。
可以通过include关键字加上引号括起的路径,就可以将外部VCL配置文件引入进来。
阅读(491) | 评论(0) | 转发(0) |