2012-07-16 106 views
1

我在前端使用清漆作为缓存服务器和apache2乘客运行在我的rails3应用程序的后端。我使用devise gem进行身份验证,但我无法使用lougout。清漆轨道设计注销配置

我认为清漆有一个选项来清除登录的用户会话或cookie。我想知道清漆配置,以便我可以注销。

这里是我的清漆配置:

backend default { 
.host = "127.0.0.1"; 
.port = "8080"; 
} 


sub vcl_recv { 
if(req.url ~ "my" || req.request == "POST" || req.request == "PUT" || req.request ==  "DELETE") { 
return (pass); 
} 
return (lookup); 
} 
sub vcl_fetch { 

if(req.url ~ "logout" || req.url ~ "sign_out"){ 
unset beresp.http.Set-Cookie; 
} 
if (req.request == "GET") { 
      unset beresp.http.Set-Cookie; 
      set beresp.cacheable = true; 
      set beresp.ttl = 360m; 
    } 

    if (req.url ~ "images/" || req.url ~ "javascripts" || req.url ~ "stylesheets"){ 
      set beresp.ttl = 360m; 
    } 
} 

回答

1

我想,你必须包括在土特产品recv函数注销的URL,因为否则你没有告诉轨,终止会话。

我会像尝试:

sub vcl_recv { 
    if(req.url ~ "logout" ||req.url ~ "my" || req.request == "POST" || req.request == "PUT" || req.request == "DELETE") { 
     return (pass); 
    } 
    return (lookup); 
} 
+0

我已经尝试过,但它不是working.Is有没有其他办法? – 2012-07-19 15:36:06