I just set up Nginx as a proxy to Apache for my vBulletin based site.
Everything went well till I enabled Nginx caching. Once Nginx caching
is enabled I’m and all users are no longer unable to log-in to the
forum due cookie cashing. When I disable caching we are all able to
log-in as usual.
Is there anyway to completely disable caching for cookies/sessions and
keep caching for anything else?
Also although there are already some caching in the folder
/var/www/cache, the cache.access.log is empty and has no records in
it, any idea why is that?
max_size=1000m inactive=7d;
/var/www/cache, the cache.access.log is empty and has no records in
it, any idea why is that?
It seems proxy_cache_key is set to default, meaning that the cookie is
not included. So everyone will see the same cached responses for GET
requests, whether they log in or not.
try something like:
proxy_cache_key “$host$request_uri$cookie_sessioncookie”;
where “user” is replaced with whatever your session cookie is.
This still may not be usable, though, as you have things configured to
cache all pages for at least 1 minute. That means users will
potentially make a post and then not see any change in the forum
pages. If the forum pages need to be truly dynamic, caching for logged
in users might not be an option.