Note that there are some explanatory texts on larger screens.

plurals
  1. POvarnish cookies issues
    primarykey
    data
    text
    <p>first of all, sorry for my poor english it's not my natural language.</p> <p>I try to configure varnish with cookies for managment users to backend, and i have some issues to loggin and other checks.</p> <p>My config for recv, fetch and hash:</p> <pre><code>backend default { .host = "127.0.0.1"; .port = "8080"; } sub vcl_recv { remove req.http.X-Forwarded-For; set req.http.X-Forwarded-For = client.ip; if (req.request == "POST"){ return (pass); } # Grace mode if (! req.backend.healthy) { set req.grace = 30m; } else { set req.grace = 15s; } if(req.url ~ "^localhost$"){ set req.http.host = "www.micasa.com"; } # Acces to system URL's is protected if ((req.url ~ "^/server_status") || (req.url ~ "^/discover/varnish_server")) { error 403 "Go away, please"; } # Delete all cookies except from user if ( !(req.url ~ "^/logout") &amp;&amp; !(req.url ~ "^/profile") &amp;&amp; !(req.url ~ "^/playlists") &amp;&amp; !(req.url ~ "^/users") &amp;&amp; !(req.url ~ "^/signup") &amp;&amp; !(req.url ~ "^/comments") &amp;&amp; !(req.url ~ "^/login") &amp;&amp; !(req.url ~ "^/remind")) { unset req.http.cookie; } sub vcl_fetch { # Grace mode # https://www.varnish-cache.org/docs/trunk/tutorial/handling_misbehaving_servers.html#grace-mode set beresp.grace = 30m; # Saint mode # https://www.varnish-cache.org/docs/trunk/tutorial/handling_misbehaving_servers.html#saint-mode if (beresp.status == 500) { set beresp.saintmode = 10s; return (restart); } if ( !(req.url ~ "^/login") &amp;&amp; (req.request == "GET")){ unset beresp.http.set-cookie; # To avoid caching of cookies } # Process ESIs if X-RUN-ESI is set. This will be stripped before being sent down to client. if ( beresp.http.X-RUN-ESI ) { set beresp.do_esi = true; remove beresp.http.X-RUN-ESI; } # cache 404s and 301s for 5 minute if (beresp.status == 404 || beresp.status == 301 || beresp.status == 500) { set beresp.ttl = 15m; return (deliver); } # cache images and static assets during 15m if ( req.url ~ "\.(png|gif|jpg|css|js|ico)" ) { set beresp.ttl = 15m; return (deliver); } # If X-VARNISH-TTL is set, use this header's value as the TTL for the varnish cache. # Expires, cache-control, etc. will be passed directly through to the client # Cribbed from http://www.lovelysystems.com/configuring-varnish-to-use-custom-http-headers/ if (beresp.http.X-VARNISH-TTL) { C{ char *ttl; /* first char in third param is length of header plus colon in octal */ ttl = VRT_GetHdr(sp, HDR_BERESP, "\016X-VARNISH-TTL:"); VRT_l_beresp_ttl(sp, atoi(ttl)); }C remove beresp.http.X-VARNISH-TTL; return (deliver); } sub vcl_deliver { unset resp.http.x-url; # Optional if ( req.url ~ "\.(png|gif|jpg|css|js|ico|woff)" ) { set resp.http.expires = "3600"; } #mikel #remove resp.http.X-Powered-By; remove resp.http.Server; #remove resp.http.X-Varnish; #remove resp.http.Via; #remove resp.http.Age; } sub vcl_hash { if (req.http.Cookie ~ "_micasa_session") { hash_data(req.url); hash_data(req.http.Cookie); return (hash); } } </code></pre> <p>When i try to loggin with user it's ok, but if i refresh the same page after that, i lose cookie and immediatly logout, maybe the problem is in sub vcl_recv?</p> <p>Thank's for advance for you help.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload