proxy_cache - Is there a way to cancel file caching from header filter?
toli at webforge.bg
Wed Apr 13 14:49:43 MSD 2011
On 04/13/2011 12:47 PM, Igor Sysoev wrote:
> On Wed, Apr 13, 2011 at 12:03:29PM +0300, Anatoli Marinov wrote:
>> Is there a way to cancel file caching from header filter?
>> I am using nginx as a reverse proxy and proxy_cache for caching and this
>> configuration serves flv files.
>> Standard flv module cannot work with proxy_cache so start= argument is
>> not understand by the nginx. There is other internal server (typically a
>> cloud of them) that understands the argument and return a chunk from the
>> file - starting from desired position. After this file is received from
>> the nginx by its upstream it will be cached.
>> These chunked files should not been cached because they do not contain
>> the whole content of the original file.
>> So I have written new header filter and in this filter for given file I
>> can take a decision to cache it or not. By default proxy_cache will
>> cache this file so can I cancel this?
> The simplest way is to set "X-Accel-Expires: 0" in a response
> of server that sends chunk.
> Other way in configuration:
> proxy_cache_bypass $arg_start;
> proxy_nocache $arg_start;
I do not think I will be able to achieve this with configuration
parameters. I have written a filter-module that understand start=
argument and serve from proxy_cache cached files.
But there is interesting case when the file does not exist in the cache
(and there is start= as an argument) so then it should be downloaded
through upstream from remote server and the file should not be cached,
because it is partial.
You told me the simplest way :) is there any other ways?
I need just a direction ...
More information about the nginx-devel