nginix not servic static content as part of page
Reinis Rozitis
r at roze.lv
Fri Feb 5 14:31:43 MSK 2010
As people have pointed out if() is bad choice:
Try this instead:
location / {
try_files $uri @fallback;
}
location @fallback {
proxy_pass http://mycluster$request_uri;
}
----- Original Message -----
From: "JohnSchulze" <nginx-forum at nginx.us>
To: <nginx at nginx.org>
Sent: Friday, February 05, 2010 1:08 PM
Subject: nginix not servic static content as part of page
>I have a Mongrel cluster behind nginx and am trying to get nginx to serve up the static contents of my site with the following rule
>(RESTful URLs):
>
> location / {
> if (-f $request_filename) {
> break;
> }
>
> if (!-f $request_filename) {
> proxy_pass http://mycluster$request_uri;
> break;
> }
> }
>
> When I load up a page which has images in it (referenced from /public/images) the requests for the images seem to hang forever
> (same goes for JS, CSS, etc). However, if I go straight to an image URL (right click, "view image") all the files are served as
> expected - and they continue to be served if i turn the Mongrel cluster off. So nginx can clearly see and access all the static
> files. Also, when looking in firebug while loading a page I can see that double requests are being made for some of the files (not
> always the same ones!) and that sometimes one of them is served correctly while the other request will hang indefinitely. Latency
> for content that does get served is also much worse than when pointing straight to a Mongrel instance.
>
> If I change the rule to redirect everything to my cluster the statics are all served fine - exactly the same result as if I go to
> one of the Mongrels directly - and performce improves massively:
>
> location / {
> proxy_pass http://mycluster$request_uri;
> }
>
> That's of course not an option as I very much want nginix to serve this content instead. Another strange thing is it seems the
> files do actually get sent; for example I can see the images in firebug when hovering over the never completing requests. I'm
> fairly new to nginix so it's likely I've missed something obvious - I've tried my best to find the answer on my own but I really
> could do with some help!
>
> Many thanks,
>
> JS
>
> P.S. Could it be that nginx and Mongrel are conflicting over who should serve the file?
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?2,50870,50870#msg-50870
>
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
More information about the nginx
mailing list