nginx + caching of static files

Payam Chychi pchychi at gmail.com
Tue Apr 7 09:46:24 MSD 2009


2009/4/6 Igor Sysoev <is at rambler-co.ru>:
> On Mon, Apr 06, 2009 at 10:14:36PM -0700, Payam Chychi wrote:
>
>> Hi Guys,
>>
>> I was hoping someone could point out a document where it can teach me
>> how to setup nginx + caching. I know that traditionally nginx did not
>> have a native caching and it required you to run ncache or cachemem in
>> order to perform caching of static content... but does nginx now allow
>> basic static file caching without the use of any other 3rd app?
>>
>> Im trying to understand if nginx now has a native caching which would
>> allow caching of static content. I dont want to get fancy in anyway, I
>> simply want to allocate say 200mb of storage space to allow caching of
>> static content. the 200mb should be updated with the most
>> active/recently seen file request.
>>
>> reason? im trying to allow nginx to serve the static files from disk
>> (if it has seen it previously) and not have to go back to the origin
>> server every single time.
>
> Get the lastest nginx (0.7.50) and use
>
>    proxy_cache_path  /path/to/cache  levels=1:2
>                      keys_zone=one:10m
>                      inactive=7d  max_size=200m;
>
>    proxy_temp_path   /path/to/temp;  # must be on the same filesystem
>                                      # as cache
>
>    server {
>
>        location / {
>            proxy_pass              http://backend;
>
>            proxy_cache             one;
>            proxy_cache_key         backend$request_uri;
>            proxy_cache_valid       200  1h;
>            proxy_cache_use_stale   error timeout invalid_header;
>        }
>
>
>
> --
> Igor Sysoev
> http://sysoev.ru/en/
>
>
 proxy_cache_path  /path/to/cache  levels=1:2
                     keys_zone=one:10m
                     inactive=7d  max_size=200m;

   proxy_temp_path   /path/to/temp;  # must be on the same filesystem
                                     # as cache

   server {

       location / {
           proxy_pass              http://backend;

           proxy_cache             one;
           proxy_cache_key         backend$request_uri;
           proxy_cache_valid       200  1h;
           proxy_cache_use_stale   error timeout invalid_header;
       }



few questions:
1- what does the keys_zone used for
2- what does the "200 1h" in proxy_cache_valid mean
3- how is the "proxy_cache_use_stale  error timeout invalid_header" used?


thanks again Igor,
-Payam





More information about the nginx mailing list