Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

We had a "beta" site set up under http://beta.domain.com, while http://www.domain.com contained a launch page. We now got rid of the launch page and moved the site over to the actual domain. I set up a permanent redirect in nginx to deal with this, but it somehow is not redirecting properly.

server {
    server_name beta.domain.com;

    rewrite ^/(.*) http://www.domain.com/$1 permanent;

}

When I test it out using curl, it seems to work as expected.

$ curl -v beta.domain.com/page
> GET /page HTTP/1.1
> User-Agent: curl/7.21.4 (universal-apple-darwin11.0) libcurl/7.21.4 OpenSSL/0.9.8r zlib/1.2.5
> Host: beta.domain.com
> Accept: */*
> 
< HTTP/1.1 301 Moved Permanently
< Server: nginx/1.2.1
< Date: Tue, 16 Jul 2013 20:37:03 GMT
< Content-Type: text/html
< Content-Length: 184
< Connection: keep-alive
< Location: http://www.domain.com/page
< 
<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.2.1</center>
</body>
</html>

However, when I go to http://beta.domain.com/page in Firefox, I get redirected to http://www.domain.com instead of http://www.domain.com/page. If I go directly to http://www.domain.com/page in Firefox, that works as expected.

I want to fix this with proper permanent redirect for SEO, but can't figure out the cause of this issue. We are using a Python/Django deployment running on Apache/ModWSGI, with nginx as the frontend server.

Thanks!

share|improve this question
add comment

2 Answers

Try using return instead.

server {
    listen [::]:80;
    server_name beta.example.com;
    return 301 $scheme://www.example.com$request_uri$is_args$args;
}
share|improve this answer
add comment

Comparing with some rewrites on my server you may have a some unneeded slashes

try rewrite ^(.*) scheme://www.domain.com$1 permanent;

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.