Hi Guillaume,

Our application has been live since last few months and has been working fine. We have been using nginx caching in our production.

We have been planning to replace nginx caching with Varnish and use nginx purely as a proxy. For some requests, we plan to bypass Varnish as they need not be cached. Also, we are serving static content using nginx.

Right now the Varnish is on our test environment (will test thoroughly before deploying) where we do not use caching as developers want to see immediate results of the changes they make.

To answer your query, it works fine without varnish. I have tested removing varnish and then adding it. I also, was surprised that it wasn't working properly as the logs say otherwise. Will investigate further.

I hope the VCL logic/code is fine.

One more thing is the cookie in the request log isn't showing all the cookies:

- ReqHeader Cookie: _xsrf=2|f25d8caf|ffacf1c86b71827915f94aed8e9aeace|1462920275; jivaana_country=IN; pagemap=0,0,0,0,0,1,0'; mp_774636c1ed2371eaf99455f71871069c_mixpanel=%7B%22distinct_id%22%3A%20%221518b8ba6c314b-04bd3d4-6b1b237b-100200-1518b8ba6c428a%22%2C%22%24i

There are couple of more cookies like 'loggedin_user' and 'sessionid' which are not shown in the log. Whereas the vcl_recv works fine as per the code written. Also, the network flow in inspect element (of the browser) shows the cookies present in the Request header.

Thanks,

Pinakee

On 26/05/16 8:23 pm, Guillaume Quintard wrote:
On Thu, May 26, 2016 at 4:40 PM, Pinakee BIswas <[email protected] <mailto:[email protected]>> wrote:

    Regarding the faulty request, Following are two requests for the
    same URL - /heels/ - one when the user was logged in and another
    when the user had logged out. The second one (when the user was
    logged out) is the faulty one as the user is still seeing the data
    when he was logged in.

    -   BereqMethod GET
    -   BereqURL       /heels/
    -   BereqProtocol  HTTP/1.0
    -   BereqHeader    X-CLIENT-COUNTRY: IN
    -   BereqHeader    Host: varnish_staging
    -   BereqHeader    Accept:
    text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    -   BereqHeader    Upgrade-Insecure-Requests: 1
    -   BereqHeader    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac
    OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko)
    Chrome/50.0.2661.102 Safari/537.36
    -   BereqHeader    Referer: http://test.jivaana.in/home
    -   BereqHeader    Accept-Language: en-US,en;q=0.8
    -   BereqHeader    X-Forwarded-For: 127.0.0.1
    -   BereqHeader    Accept-Encoding: gzip
    -   BereqProtocol  HTTP/1.1
    -   BereqHeader    X-Varnish: 32788


Are you sure your backend isn't caching stuff or something like that? Looking at bereq 32788, varnish is fetch a fresh object, and I see no header that would identify the user. Have you tried without varnish?

--
Guillaume Quintard

_______________________________________________
varnish-misc mailing list
[email protected]
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc

Reply via email to