【发布时间】:2012-01-19 15:19:23
【问题描述】:
我正在使用 Varnish 2.0.6,但无法找到编写 vcl_hash 函数的好文档。
在缓存之前,我需要从我的 API 的 URL 中删除一些参数。特别是传递给跟踪分析但不更改结果的用户 ID。
URL: /api/browse?node=123&userid=3432432564363
我写了这个,但如果 vcl_hash 函数需要以 'hash' 或 'return(hash)' 或 NOTHING 结尾,并且我需要处理所有情况或只是我的特殊情况,这对我来说并不明确。我不清楚我是在覆盖方法还是在扩展它。
我有:
sub vcl_hash {
if (req.url ~ "^/api/browse") {
set req.hash += regsuball(req.url,"&userid=([A-z0-9]+)","");
}
hash;
}
是不是少了什么?
【问题讨论】:
标签: varnish varnish-vcl