nginx-devel Digest, Vol 32, Issue 13

Thomas sunyxing at gmail.com
Tue Jun 12 13:22:29 UTC 2012


On Tue, Jun 12, 2012 at 8:00 PM, <nginx-devel-request at nginx.org> wrote:
>
> Send nginx-devel mailing list submissions to
>        nginx-devel at nginx.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
>        http://mailman.nginx.org/mailman/listinfo/nginx-devel
> or, via email, send a message with subject or body 'help' to
>        nginx-devel-request at nginx.org
>
> You can reach the person managing the list at
>        nginx-devel-owner at nginx.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of nginx-devel digest..."
>
>
> Today's Topics:
>
>   1. Is there any way to redirect request to another server conf?
>      (Thomas)
>   2. Re: Is there any way to redirect request to another server
>      conf? (Ant?nio P. P. Almeida)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 12 Jun 2012 19:29:56 +0800
> From: Thomas <sunyxing at gmail.com>
> To: nginx-devel at nginx.org
> Subject: Is there any way to redirect request to another server conf?
> Message-ID:
>
>  <CAJLop126QHAWyEfKug8MzR9Bth0C-mafRuwwW2HVRYF+i1hPMA at mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hi All,
>
>    I'm trying to use nginx as a proxy server which can judge server name
> by url.
>
>   e.g.
>
>   server {
>      listen 80 default_server;
>      my_rewrite_directive;
>   }
>
>   server {
>      server_name a.com;
>      root html/a;
>   }
>
>   server {
>      server_name b.com;
>      root html/b;
>   }
>
>  then  GET /a.com/index.html  will be redirected to server a.com;
>
> I tried to write a module to accomplish this by modifying members in http
> request structure, but it seems that r->srv_conf has already been set
> before running module phases. I tried internal redirect and it didn't
> help.
> so my question is,
>
> Is there any way to redirect request to another server conf without
> modifying the nginx core?
>
> Thanks in advance.
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:
> <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20120612/586cecfa/attachment-0001.html>
>
> ------------------------------
>
> Message: 2
> Date: Tue, 12 Jun 2012 13:40:09 +0200
> From: Ant?nio P. P. Almeida <appa at perusio.net>
> To: nginx-devel at nginx.org
> Subject: Re: Is there any way to redirect request to another server
>        conf?
> Message-ID: <87vciwg3mu.wl%appa at perusio.net>
> Content-Type: text/plain; charset=US-ASCII
>
> On 12 Jun 2012 13h29 CEST, sunyxing at gmail.com wrote:
>
> > Hi All,
> >
> > I'm trying to use nginx as a proxy server which can judge server
> > name by url.
> >
> > e.g.
> >
> > server {
> > listen 80 default_server;
> > my_rewrite_directive;
> > }
> >
> > server {
> > server_name a.com;
> > root html/a;
> > }
> >
> > server {
> > server_name b.com;
> > root html/b;
> > }
> >
> > then  GET /a.com/index.html  will be redirected to server a.com;
>
> Doesn't this do what you need?
>
> server {
>    listen 80 default_server;
>
>    location /a.com/index.html {
>        return 302 http://a.com$request_uri;
>    }
>
>    location /b.com/index.html {
>        return 302 http://b.com$request_uri;
>    }
> }
>
> --- appa
>

Thanks for advice. Since my servers are supposed to handle the request
 directly and independently,  302/301 are not acceptable in this
situation.



More information about the nginx-devel mailing list