> CentOS > CentOS教程 >

centos下安装varnish

  1. 1,下载安装包,并修改文件名    
  2. wget http://sourceforge.net/projects/varnish/files/latest/download    
  3. tar zxvf download    
  4. cd varnish-2.1.3    
  5. 2,安装相关组件pcre    
  6. yum install pcre    
  7. 3,设置环境变量    
  8. export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig    
  9. 4,配置    
  10. ./configure --prefix=/usr/local/varnish --enable-dependency-trackin --enable-debugging-symbols --enable-developer-warnings    
  11. 5,编译安装    
  12. make &&make install    
  13. 6,启动    
  14. ./../../sbin/varnishd -f /usr/local/varnish/etc/varnish/varnish.vcl -s file,/var/varnish_cache,1G -T 127.0.0.1:2000 -a 0.0.0.0:9001    

示例配置

 

  1. [root@localhost varnish]# cat varnish.vcl     
  2. backend cqserver {    
  3. .host = "192.168.0.1";    
  4. .port = "5007";    
  5. .connect_timeout = 20s;    
  6. }    
  7. acl purge {    
  8. "localhost";    
  9. "127.0.0.1";    
  10. "192.168.1.0"/24;    
  11. }    
  12. sub vcl_recv {    
  13. if (req.request == "PURGE") {    
  14.  if (!client.ip ~ purge) {    
  15.     error 405 "Not allowed.";    
  16.   }    
  17.  return (lookup);    
  18. }    
  19.     
  20. if (req.http.host ~ "^192") {    
  21. set req.backend = cqserver;    
  22.   if (req.request != "GET" && req.request != "HEAD") {    
  23.      return (pipe);    
  24.   }    
  25. else{    
  26.    return (lookup);    
  27.    }    
  28. }    
  29. else {    
  30.    error 404 "caoqing Cache Server";    
  31.    return (lookup);    
  32.    }    
  33. }    
  34. sub vcl_hit {    
  35. if (req.request == "PURGE") {    
  36. set obj.ttl = 0s;    
  37. error 200 "Purged.";    
  38. }    
  39. }    
  40.     
  41. sub vcl_deliver {    
  42.   if (obj.hits > 0){    
  43.     set resp.http.X-Cache = "HIT";    
  44.   } else {    
  45.     set resp.http.X-Cache = "MISS";    
  46.   }    
  47.  }    
  48.     
  49. sub vcl_miss {    
  50. if (req.request == "PURGE") {    
  51. error 404 "Not in cache.";    
  52. }    
  53. }    



(责任编辑:IT)