先安装写依赖包 以免后面报错
automake autoconf libtool ncurses-devel libxslt groff pcre-devel pkgconfig (Ubuntu下的) libproc g++
一 、安装Varnish
tar zxvf varnish-2.1.3.tar.gz -C /usr/local/src/
# cd /usr/local/src/varnish-2.1.3/
# ./configure --prefix=/usr/local/varnish
# make
# make install
二、创建www用户和组,以及Varnish缓存文件存放目录
1. 创建组
# groupadd www
2.创建用户
useradd www -g www -s /sbin/nologin
-g:指定用户属于哪个组
-s:指定用户属于哪个shell登录(nologin就是不允许登录)
3.创建缓存文件目录
# mkdir -p /data/varnish/
-p:可以是一个路径名称。此时这个路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,而且一次可以建立多个目录。
4.给目录添加写入权限
# chmod +w /data/varnish/
5. 更改属主和属组
# chown -R www:www /data/varnish/
############## 配置文件 #############################
vi /usr/local/varnish/etc/varnish/www.vcl
backend www { #定义后端服务器名
.host = "192.168.1.69"; #定义后端服务器IP
.port = "80"; #定义后端服务器端口
}
#定义访问控制列表,充许那些IP清除varnish 缓存
acl purge {
"localhost";
"127.0.0.1";
"192.168.1.0"/24 ;
}
# sub vcl_recv {
# if (req.request == "PURGE") {
# if (!client.ip ~ purge) {
# error 405 "Not allowed.";
# }
# return(lookup);
# }
判断host请求针对那个后端服务器
sub vcl_recv {
if (req.http.host ~ "^192.168.1.124") { #泛域名的写法"^(.*.)?test.com$"
set req.backend = www;
}
else {
error 404 "Unknown HostName!"; #如果都不匹配,返回404错误
}
}
#####################################
三 。 启动
#!/usr/bin/bash
/usr/local/varnish/sbin/varnishd -n /data/varnish/ \
-f /usr/local/varnish/etc/varnish/www.conf \
-a 0.0.0.0:80 \
-s file,/data/varnish/varnish_cache.data,1024m \
-p user=www -p group=www \
-w 30000,51200,10 \
-T 127.0.0.1:3500 \
-P /usr/local/varnish/var/varnish.pid
参数说明:
/usr/local/varnish/sbin/varnishd
-n /data/varnish/
-f /usr/local/varnish/etc/varnish/www.conf #配置文件
-a 0.0.0.0:80 #监听端口
-s file,/data/varnish/varnish_cache.data,1024m # file 指定varnish缓存文件的位置以及大小
–p user=www –p group=www #用户和组
-w 30000,51200,10 #指处理的最小请求数、最大请求数、超时时间
-T 127.0.0.1:3500 #管理端口
–p client_http11=on #支持http1.1协议
-P /usr/local/varnish/var/varnish.pid #指定其进程码文件的位置,实现管理
分享到:
相关推荐
假设我们希望缓存一个页面的请求路径为“/”,可以通过VCL文件进行配置,例如设置一个简单的规则来缓存所有以“/”开头的请求。此外,还可以使用`kill`命令来清除缓存中的特定条目,这对于测试和调试非常有用。 ...
5. **易扩展性**:Varnish的模块化设计使得添加新功能和扩展变得简单。 **Varnish 3.0.7的安装与配置** 1. **解压源码**:首先,你需要在Linux环境下解压下载的“varnish-3.0.7.tgz”文件,使用命令`tar -zxvf ...
Varnish采用了一种名为VCL(Varnish Configuration Language)的自定义脚本语言,允许管理员和开发者通过简单的语法定义缓存策略,如决定哪些内容应该被缓存、缓存多久以及如何处理不同类型的请求。 在描述中提到的...
最后,Varnish 4.0.0还改进了管理和维护工具,如varnishadm和varnishlog,使得监控和调试变得更加简单。 总的来说,"varnish-4.0.0"是一个强大而可靠的版本,提供了更高级别的定制化、性能优化和安全性。无论你是...
在解压并编译安装varnish-3.0.2后,你可以通过配置VCL文件来定制你的缓存策略,然后启动Varnish服务。使用`varnishlog`和`varnishstat`命令监控Varnish的运行情况,而`varnishadm`则是一个交互式管理工具,可以帮助...
Varnish的配置文件(如`default.vcl`)使用VCL(Varnish Configuration Language),这是一种专为定义Varnish行为的简单语言。VCL允许你控制如何处理HTTP请求和响应,包括缓存哪些内容、何时刷新缓存以及如何与后端...
安装完成后,你需要配置Varnish的默认设置,这通常涉及到修改`/etc/varnish/default.vcl`文件。之后,可以启动Varnish服务: ```bash sudo systemctl start varnish ``` 要让Varnish在系统启动时自动启动,可以...
清漆教程一个简单的打包 Vagrant 环境,用于我的 Varnish 教程。 使用清漆 4。 使用 hiera 进行配置,因此您只需要编辑 Vagrantfile 以使其运行,然后在puppet/manifests/hiera/config.yaml设置您的站点。 我使用的...
1. **VCL(Varnish Configuration Language)**:Varnish Cache使用一种简单的声明式配置语言VCL,允许用户自定义缓存策略。VCL通过定义规则来决定如何处理HTTP请求和响应,例如根据URL、HTTP头信息等条件来决定是否...
通过使用“laravel-varnishable”,开发者可以轻松地配置和管理Varnish,以优化Laravel应用的性能。 【描述】:“Laravel开发-laravel-varnishable Laravel中简单易用的清漆集成” 这个描述指出,"laravel-...
Ansible-ansible-role-varnish.zip,ansible role-varnish http加速敏感角色:varnish,ansible是一个简单而强大的自动化引擎。它用于帮助配置管理、应用程序部署和任务自动化。
作为一个专业的IT大师,我将详细介绍Varnish Cache的工作原理、主要特点、安装配置以及常见应用场景。 Varnish Cache的核心功能是通过缓存HTTP对象(如HTML页面、图片和其他静态内容)来减少对后端服务器的请求,...
Varnish SNMP 开源项目是针对 Varnish Cache 的一个扩展工具,它允许用户通过 SNMP(简单网络管理协议)来监视和远程管理 Varnish 缓存服务。Varnish Cache 是一款高性能的反向代理服务器,常用于优化网站内容的交付...
Varnish Bans Manager(VBM)是一个简单的服务器和Web UI,旨在简化非技术用户需要使缓存内容无效的复杂部署中的禁令管理。 使用Web界面,您和您的用户将能够: 定义Varnish缓存节点。 分组组织缓存以简化批量操作...