Help noob with redirection
--[ UxBoD ]--
uxbod at splatnix.net
Wed Jun 9 16:19:00 MSD 2010
----- Original Message -----
> On Wed, Jun 09, 2010 at 01:05:56PM +0100, --[ UxBoD ]-- wrote:
>
> > ----- Original Message -----
> > > On Wed, Jun 09, 2010 at 12:50:30PM +0100, --[ UxBoD ]-- wrote:
> > >
> > > > Hi,
> > > >
> > > > I have installed my first NGINX proxy and having a real problem
> > > > with
> > > > redirects. As a example I have published externally:
> > > >
> > > > https://pm.domain.com/client1
> > > > https://pm.domain.com/client2
> > > >
> > > > which should then redirect to the clustered back-end servers
> > > > which are named pm01.domain.com etc. What is happening is that
> > > > when I try
> > > > in the URL it comes back with the correct content but the URL in
> > > > the browser shows the back-end server named; so how do I get it
> > > > to be
> > > > the externally published name ?
> > > >
> > > > Config
> > > > ------ server {
> > > > listen 443;
> > > > server_name pm.domain.com;
> > > >
> > > > ssl on;
> > > > ssl_certificate /etc/pki/tls/certs/proxy01c.pem;
> > > > ssl_certificate_key /etc/pki/tls/private/proxy01k.pem;
> > > >
> > > > ssl_session_timeout 5m;
> > > >
> > > > ssl_protocols SSLv2 SSLv3 TLSv1;
> > > > ssl_ciphers
> > > > ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
> > > > ssl_prefer_server_ciphers on;
> > > >
> > > > access_log /var/log/nginx/pm.domain.com-access.log main;
> > > > error_log /var/log/nginx/pm.domain.com-error.log info;
> > > >
> > > > gzip on;
> > > > gzip_http_version 1.0;
> > > > gzip_comp_level 2;
> > > > gzip_proxied any;
> > > > gzip_types text/plain text/html text/css
> > > > application/x-javascript text/xml application/xml
> > > > application/xml+rss text/javascript;
> > > >
> > > > upstream projectmanagement {
> > > > server pm01.domain.com:443;
> > > > server pm02.domain.com:443;
> > > > }
> > > >
> > > > location / {
> > > > proxy_pass https://projectmanagement;
> > > > proxy_redirect on;
> > >
> > > - proxy_redirect on;
> > > + proxy_redirect default;
> > >
> > > > proxy_set_header Host $host;
> > > > proxy_set_header X-Real-IP $remote_addr;
> > > > proxy_set_header X-Forwarded-For
> > > > $proxy_add_x_forwarded_for;
> > > >
> > > > client_max_body_size 10m;
> > > > client_body_buffer_size 128k;
> > > > }
> > > > }
> > >
> > >
> > Igor,
> >
> > I have switched it from on too default but after restarting NGINX I
> > get the same result ?
>
> Sorry, try the following proxy_redirects:
>
> proxy_redirect https://pm01.domain.com/ /;
> proxy_redirect https://pm02.domain.com/ /;
>
>
Igor, that works now using the above syntax :) A question though is there anyway to tell NGINX to redirect based on the proxied hostname ? If we had pm01 ... 100 then I would need to add 100 proxy_redirect statements or can it be done with a clever single line ?
--
Thanks, Phil
More information about the nginx
mailing list