Question

How to configure nested subfolder to subdomain Nginx redirects

Posted March 24, 2014 7k views
I'm trying to set up multiple subfolder to subdomain redirect like this:
location ~ ^/\~([^/]+)/(.*)$ {
  location ~ ^/\~ask/(.*)$ {
    rewrite ^(.*)$ http://forum.site.com$1 permanent;     
  }

  location ~ ^/\~forum/(.*)$ {
    rewrite ^(.*)$ http://forum.site.com$1 permanent;     
  }

  location ~ ^/\~qa/(.*)$ {
    rewrite ^(.*)$ http://forum.site.com$1 permanent;     
  }
}
The idea is that all requests to site.com/ask, site.com/forum and site.com/qa will be redirected to forum.site.com. With the above code, only redirects from site.com/ask are working. What could be wrong with the rest and is there a better way to setting them up?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
3 answers
Try using the following rewrite rule instead, does that fix it?
rewrite ^/(ask|forum|qa)/(.*)$ http://forum.site.com/$2 permanent;
How would you modify the *location* line to match, or is that not needed with your form of the *rewrite*?
That's not needed -- you can replace all of the location blocks with the one rewrite rule I posted.
Submit an Answer