On Wed, May 13, 2009 at 10:59:13AM -0400, Jim Ohlstein wrote:
> Igor Sysoev Wrote:
> -------------------------------------------------------
> > On Wed, May 13, 2009 at 12:06:33AM -0400, Jim
> > Ohlstein wrote:
> >
> > > Igor Sysoev Wrote:
> > >
> > --------------------------------------------------
> > -----
> > > > On Sat, May 09, 2009 at 03:02:53PM -0400, Jim
> > > > Ohlstein wrote:
> > > >
> > > > > Is there any way to set the it just to
> > cache
> > > > image and other media files, but not
> > text/html? I
> > > > only see based on response in the Russian
> > docs
> > > > (best as I can understand). Is that something
> > that
> > > > can be added or is planned?
> > > >
> > > > No, currently nginx can not cache using
> > > > content-type, but it can be easy
> > > > added. Also you may use location to separate
> > > > responses.
> > > >
> > >
> > > Can you give a sample configuration of how that
> > would work.
> > >
> > > I have tried putting location blocks in and out
> > of the main fastcgi_pass block without any
> > success.
> >
> > location ~ \.php$ {
> > fastcgi_pass ...
> > }
> >
> > location ~ \.(jpg|gif|png)$ {
> > fastcgi_pass ...
> > fastcgi_cache ...
> > }
> >
> >
>
> That's what I tried first: It's a Perl script and I am using fcgiwrap.
>
> location ~ myscript {
> fastcgi_pass unix:/tmp/cgi.sock;
> include /usr/local/nginx/conf/fastcgi_params;
> fastcgi_buffers 64 8k;
> }
>
> location ~ \.(jpg|gif|png)$ {
> fastcgi_pass unix:/tmp/cgi.sock;
> fastcgi_cache one;
> fastcgi_cache_key unix:/tmp/cgi.sock.1$request_uri;
> fastcgi_cache_valid 200 302 5m;
> fastcgi_cache_valid 301 1d;
> fastcgi_cache_valid any 5m;
> include /usr/local/nginx/conf/fastcgi_params;
> fastcgi_buffers 64 8k;
> }
>
> The only thing that winds up in the cache is when there is a 403.
Probably you need to add
fastcgi_ignore_headers Cache-Control Expires;
--
Igor Sysoev
http://sysoev.ru/en/