根据client.ip有条件地设置Varnish标头

时间:2014-10-21 06:33:22

标签: varnish varnish-vcl

如何在Varnish 3.0 VCL的fetch部分设置头文件时使用client.ip作为条件?我有一些故障排除标题,我想设置解决缓存问题,但是,我不希望它们公开显示。我希望能够将我的IP地址的标题列入白名单。

有没有办法在_fetch中访问client.ip?

1 个答案:

答案 0 :(得分:2)

您可以在没有任何条件的情况下在__recv中最好地设置所有故障排除标题,并在vcl deliver中删除它们。这样你就不需要在每个条件头上添加相同的ip检查

如果您想使用ip范围,可以使用以下代码

acl debug {
"your ip adress1";
"you ip adress 2";
}

你vcl_recv

if (!client.ip ~ debug) {
set req.http.x-debug = "debug";
}

你vcl_deliver

if(!req.htt.x-debug){
remove resp.http.debugheader1;
remove resp.http.debugheader2;
}