monit rewrite

Igor Sysoev igor at sysoev.ru
Thu Sep 27 07:55:38 UTC 2012


On Thu, Sep 27, 2012 at 09:53:25AM +0200, António P. P. Almeida wrote:
> Yes but the original request AFAIK is for removing monitor from the URI. Hence the regex capture.

http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass

  If proxy_pass is specified with URI, when passing a request to the
  server, part of a normalized request URI matching the location is
  replaced by a URI specified in the directive:

    location /name/ {
        proxy_pass http://127.0.0.1/remote/;
    }


-- 
Igor Sysoev
http://nginx.com/support.html

> Igor Sysoev <igor at sysoev.ru> a écrit :
> 
> >On Thu, Sep 27, 2012 at 12:02:35AM +0200, António P. P. Almeida wrote:
> >> On 26 Set 2012 23h56 CEST, appa at perusio.net wrote:
> >> 
> >> > On 26 Set 2012 21h00 CEST, aweber at comcast.net wrote:
> >> >
> >> >> OK, I am positive this is easy for you experienced nginx users!
> >> >>
> >> >> I have a backend app server setup and am using nginx for 
> >> >> caching/proxy/ssl-termination.
> >> >>
> >> >> I would like to use the "default" server (listening on 443) to
> >> >> redirect the url https://host/monit to the server's monit-mini-http
> >> >> server (and continue to use it for ssl termination).  so I need to
> >> >> direct the backend to http://localhost:2812/.
> >> >
> >> >
> >> > Very basic. No rewrites.
> >> >
> >> > location ^~ /monit {
> >> > location ~* ^/monit/(?<monit_request_uri>.*)$ {
> >> > proxy_pass http://127.0.0.1:2812/$monit_request_uri;
> >> > proxy_set_header Host $host;
> >> > } 
> >> 
> >> Err, make that:
> >> 
> >> location ^~ /monit {
> >>    location ~* ^/monit(?<monit_request_uri>.*)$ {
> >>        proxy_pass http://127.0.0.1:2812/$monit_request_uri;
> >>        proxy_set_header Host $host;
> >> } 
> >> 
> >> This way https://myserver/monit won't give a 404.
> >
> >The regex is not required:
> >
> >location ^~ /monit/ {
> >    proxy_pass http://127.0.0.1:2812/;
> >    proxy_set_header Host $host;
> >} 
> >
> >Requests to "/monit" will be redirected to "/monit/" automatically.
> >
> >
> >-- 
> >Igor Sysoev
> >http://nginx.com/support.html



More information about the nginx mailing list