2016-10-11 19 views
0

VCLでクッキーを設定する際に有効期限を指定します。クッキーの設定時に有効期限を指定してください。

add resp.http.Set-Cookie = "language=" + req.http.X-Language + "; path=/"; 

私はこのような何かを追加する必要がありますことを知っている:私は現在、このようなものを持っている

Expires=Thu, 01 Jan 1970 00:00:00 GMT 

は私が動的に設定することができますワニスの組み込み関数があります有効期限は今後の予定ですか?私は彼らの文書を見てきましたが、これまで運がありませんでした。

ありがとうございます。

-Angel

答えて

2

- ワーキングソリューション:この構文はしっかりに特異的であるかどうかを

わからないが、私はそれを使用して作業しました:time.add(now,1d)

add resp.http.Set-Cookie = "language=" + req.http.X-Language + ";expires="+ time.add(now,1d) +"; path=/"; 
+0

それが表示されます構文の唯一のビットです。 – Danack

0

あなたはワニス4を使用する場合、あなたはクッキーVMODを使用する必要があります。 ドキュメントから:UPDATE https://github.com/varnish/varnish-modules/blob/master/docs/vmod_cookie.rst

 
format_rfc1123 

STRING format_rfc1123(TIME now, DURATION timedelta) 
Description 
Get a RFC1123 formatted date string suitable for inclusion in a Set-Cookie response header. 

Care should be taken if the response has multiple Set-Cookie headers. In that case the header vmod should be used. 

Example 
sub vcl_deliver { 
     # Set a userid cookie on the client that lives for 5 minutes. 
     set resp.http.Set-Cookie = "userid=" + req.http.userid + "; Expires=" + cookie.format_rfc1123(now, 5m) + "; httpOnly"; 
} 
関連する問題