首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >varnish和http标头

varnish和http标头
EN

Stack Overflow用户
提问于 2011-05-23 22:54:32
回答 1查看 6.1K关注 0票数 3

我是Varnish的新手,我想知道Varnish是否支持使用http头进行缓存。我们设计了一个基于Rest的web服务,我正在考虑使用Varnish来缓存结果。一些请求信息(apikey)是如何通过http头传递的,我想知道我们Varnish在检查传入的请求(vs查询字符串)时是否可以考虑到这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-24 16:28:43

是的你可以。应该如何考虑这个API密钥?如果您希望为每个用户提供唯一的缓存项,则仅当特定用户多次请求相同数据时才使用缓存。您可以通过设置正确的Cache-Control HTTP响应头(尽管数据新鲜度不会重新验证),在不使用varnish这样的缓存代理的情况下取得很大进展。

在Varnish中,至少有两种方法可以解决这个问题;

  1. 让你的应用程序返回一个HTTP头部不同: apikey .This指示任何HTTP级缓存(如varnish)仅在apikey请求头部相同的情况下才重用缓存结果。
  2. 或者,更有效地修改vcl配置中的vcl_hash函数以考虑apikey头部。

子设置{ set req.hash += req.http.apikey;}

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6098914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档