blob: 8166fcdf7557a28bc5bfa1c19610cc9495658e40 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# -*- mode: nginx; mode: flyspell-prog; ispell-current-dictionary: american -*-
### Testing if we should be serving content from cache or not. This is
### needed for any Drupal setup that uses an external cache.
## Let Ajax calls go through.
map $uri $no_cache_ajax {
default 0;
/system/ajax 1;
}
## Testing for the session cookie being present. If there is then no
## caching is to be done. Note that this is for someone using either
## Drupal 7 pressflow or stock Drupal 6 core with no_anon
## (http://drupal.org/project/no_anon).
map $http_cookie $no_cache_cookie {
default 0;
~SESS 1; # PHP session cookie
}
## Combine both results to get the cache bypassing mapping.
map $no_cache_ajax$no_cache_cookie $no_cache {
default 1;
00 0;
}
## If you're using stock Drupal 6 without no_anon, i.e., there's a
## session cookie being served even to anonymous users, then uncomment
## the three lines below and comment the above map directive
# map $http_cookie $no_cache {
# default 0;
# ~DRUPAL_UID 1; # DRUPAL_UID cookie set by Boost
# }
## Set a cache_uid variable for authenticated users.
map $http_cookie $cache_uid {
default nil; # hommage to Lisp :)
~SESS[[:alnum:]]+=(?<session_id>[[:graph:]]+) $session_id;
}
|