セッションが使用されている PHP によって生成された Varnish 3.0.2 キャッシュ ファイルを作成できません。デフォルトでは、Varnish が Set-Cookie を使用してファイルをキャッシュしないことは承知していますが、このヘッダーを削除していると思います。
sub vcl_recv {
# PHP Generated CSS
if( req.url ~ "^/css/" ) {
unset req.http.Max-Age;
unset req.http.Pragma;
unset req.http.Cache-Control;
unset req.http.Cookie;
return(lookup);
}
sub vcl_fetch {
if( req.url ~ "^/css/" ) {
remove beresp.http.Cache-Control;
remove beresp.http.Pragma;
remove beresp.http.set-cookie;
}
if (beresp.ttl <= 0s ||
beresp.http.Set-Cookie ||
beresp.http.Vary == "*") {
std.log("--------- HIT FOR PASS --------");
set beresp.ttl = 920s;
return (hit_for_pass);
}
return (deliver);
}
すべての PHP リクエストは hit_for_pass に送られ、キャッシュされることはありません。TTL 値は常に -1 です。