2013-04-26 102 views
2

我想用新部署的rails web應用程序實現清漆。ruby​​ on rails應用程序使用varnish緩存管理cookie

的Rails版本3.2.12與

紅寶石1.9.2p318(2012-02-14修訂34678)[i686的Linux的]

在我的應用程序的用戶身份驗證是由餅乾做,但清漆沒有緩存的內容當cookies存在那裏。所以我發現,對於登錄用戶清漆轉發請求到我的應用程序。我是不同的新清漆不知道如何解決這個。可能是我需要把一些塊vernish配置文件。但事情是在現場和用戶使用我的應用程序。我已經停止了varnish.Any cocrete的幫助將是應用程序真的很有趣。

回答

2

我發現這個博客Ruby on Rails, Varnish and user dependent content的解決方案,我根據博客認爲解決的辦法是:

一個好的方法來得到一個簡單的解決這個問題是應用程序的cookie添加到光油使用的哈希尋找緩存的內容。這是在配置文件的vcl_hash函數中完成的:

sub vcl_hash { 
    if (req.http.Cookie ~ "your_application_cookie") { 
    hash_data(req.url); 
    hash_data(req.http.Cookie); 
return (hash); 
    } 
} 
相關問題