301 Redirects Break Long Posts?

António P. P. Almeida appa at perusio.net
Sun Jan 15 03:00:31 UTC 2012


On 15 Jan 2012 02h48 WET, harish at octopart.com wrote:

> [1  <multipart/alternative (7bit)>]
> [1.1  <text/plain; ISO-8859-1 (7bit)>]
> Hello,
>
> I'm running nginx 1.0.10 with a few name based virtual hosts
> configured.  There are a few permanent redirects configured of the
> format:
>
> server {
> listen       80;
> server_name  domain.com;
> rewrite ^/(.*) http://www.domain.com/$1 permanent;
> }

To do that type of thing try this and see of it helps:

server {
    listen 80;
    server_name domain.com;
    return 301 http://www.domain.com$request_uri;
}

There's no need for any regex capture or rewrite for that matter. The
$request_uri variable has both the uri and the query string.

> The site sees frequent POSTs to it, which in turn seemingly randomly
> disconnect from the upstream server after sending the data along
> (the request completes successfully upstream and then complains of a
> broken pipe as nginx has disconnected).  The disconnects seem highly
> coupled to 301 redirects - in the debug logs it appears that every
> POST is interrupted by a permanent redirect (and that the thread
> serving the request stops serving requests entirely after the
> redirect finishes, the last debug statement being "http log
> handler").  After removing the server block the POSTs run without
> any problems.  I'm wondering if this is enough information to arouse
> anyone's suspicions as to what the problem is?  Any help would be
> greatly appreciated.

--- appa



More information about the nginx mailing list