Help with X-Accel-Redirect and "rewrite or internal redirection cycle" errors

Iain Barnett iainspeed at
Mon Jun 6 18:23:09 MSD 2011

On 6 Jun 2011, at 15:07, Maxim Dounin wrote:

> Hello!
> On Mon, Jun 06, 2011 at 01:50:42PM +0100, Iain Barnett wrote:
>> I'm trying to use X-Accel-Redirect from a Ruby app to hand over 
>> downloading of a file to Nginx, but it fails and the error in 
>> the logs is: 
>> 2011/06/03 09:18:16 [error] 20500#0: *37 rewrite or internal redirection cycle while internal redirect to "/files/file.m4a" while reading response header from upstream, client:, server: hercules, request: "GET /download/e2a25db11bdbdd783531783eaa16eafdfc86355b/1307089096/file.m4a/ HTTP/1.1", upstream: "", host: "fakehost.blob", referrer: "http://fakehost.blob/music/file.m4a"
> Please note "server: hercules".
> [...]
>> server {
>>  listen  80;
>>  server_name fakehost.blob;
> This is not the server where request is processed.

Sorry, I made that up :) I didn't want to use the actual host/server name so I filled in some fake bits, and the tasks of Hercules were on my mind - probably because getting computers to do what you want can be like pushing a rock up a hill endlessly :-D

I should probably have put server: fakehost.blob. Apologies for the confusion. 

Ah ha! Looking at the original, the server name is from one of the other site's being proxied to. Does this mean I should use an absolute uri for the X-Accel-Redirect header?

I'm going to try it now.


More information about the nginx mailing list