一.安装
下载后安装:
varnish的配置文件
二.配置环境:
systemctl status varnish 中找到启动脚本文件如下:
/usr/lib/systemd/system/varnish.service
需要注意更改如下三处
开启动脚本查看系统和varnish启动脚本最大打开文件数是否匹配在范围内
第1处:
最大文件数和内存可以更改系统配置,也可以更改脚本参数,在这里我们更改系统配置
第2处:
第3处:
配置/etc/security/limits.conf
开启服务:systemctl start varnish
三. cdn获取缓存
cdn缓存主机:192.168.1.14
web1:192.168.1.12
web2:192.168.1.15
在cdn缓存主机上配置
配置:/etc/varnish/default.vcl
然后systemctl restart varnish
在web1:192.168.1.12上配置
安装HTTP
发布页面输入信息
用另一台测试机访问192.168.1.14cdn缓存主机 可以看到 web上的页面信息
四.查看是否命中缓存配置
配置:vim /etc/varnish/default.vcl
清理缓存:
varnishadm ban req.url “~” /
测试:
五.指定不同域名访问不通主机
if (req.http.host ~ “^(www.)?westos.org”){
31 set req.http.host = “www.westos.org”;
32 set req.backend_hint = web1;
33 } elsif (req.http.host ~ “^bbs.westos.org”){
34 set req.backend_hint = web2;
35 }else {
36 return (synth(405));
37 }
38 }
测试去访问:
六:负载均衡
更改如下三处:
1.import directors from “/usr/lib64/varnish/vmods/libvmod_directors.so”;
2.sub vcl_init {
new lb =directors.round_robin();
lb.add_backend(web1);
lb.add_backend(web2);
}
3. set req.backend_hint = lb.backend();
return (pass);
测试:
七:图形模式
php:
[root@rhel7 mnt]# yum install -y httpd php
[root@rhel7 mnt]# unzip bansys.zip -d /var/www/html/
[root@rhel7 mnt]# cd /var/www/html/
[root@rhel7 html]# mv bansys/* .
[root@rhel7 html]# vim config.php
[root@rhel7 html]# vim /etc/httpd/conf/httpd.conf
端口更改为8080,因为80端口被占用
[root@rhel7 html]# systemctl restart httpd
配置访问列表:
[root@rhel7 ~]# cd /etc/varnish/
[root@rhel7 varnish]# vim default.vcl ##设置权限
[root@rhel7 varnish]# systemctl restart varnish