VCL簡介
VCL(Varnish Configuration Language):Varnish配置語言,語法簡單,功能強大,類似於c,perl。主要用來配置如何處理請求和內容的緩存策略。
VCL在執行時會轉換成二進制代碼
VCL文件被分為多個子程序,不同的子程序在不同的時間裡執行,比如一個子程序在接到請求時執行,另一個子程序在接收到後端服務器傳送的文件時執行
基本語法介紹
- 用花括號做界定符,使用分號表示聲明結束。註釋用//,#,/* */
- 賦值(=)、比較(==)、和一些佈爾值(!、&&、||),!(取反)等類似c語法
- 支持正則表達式,ACL匹配使用~操作,如if(req.uri ~ “abc$”){…},表示請求的uri以abc結尾
- 不同於C的地方,反斜杠()在VCL沒有特殊的含義。隻是用來匹配URLs
- VCL沒有用戶定義的變量,隻能給backend、request、document這些對象的變量賦值,大部分是手工輸入的,而且給這些變量分配值的時候,必須有一個VCL兼容的單位
- VCL有if,但是沒有循環
- 可以使用set來給request的header添加值,unset或remove來刪除某個header
聲明backend
可以配置多個後臺ip和端口
backend abc{
.host = "127.0.0.1";//ip
.port = "8080";//端口
.connect_timeout = 1s;//連接超時時間
.first_byte_timeout = 5s;//等待從backend傳輸過來的第一個字符的時間
.between_bytes_timeout = 2s;//兩個字符的間隔時間
.max_connections=100;//最大連接數
}
backend jkl{
.host = "127.0.0.1";
.port = "9090";
}
-
扫码下载安卓APP
-
微信扫一扫关注我们微信扫一扫打开小程序手Q扫一扫打开小程序
-
返回顶部
Copyright © TaoHigo.com |
2020-2021 |
|
queries in 0.275 s