Welcome! Log In Create A New Profile

Advanced

Re: Request for a "no capture" rewrite directive enhancement

B.R.
May 28, 2014 10:48PM
Yup the location directive uses the PCRE library to interpret regex.
Its docs doesn't mention that the regex are PCRE, but the hint is given
away on the build from sources http://nginx.org/en/docs/configure.htmlpage.

It reminds me that not so long ago I mixed up named captures and
subpatterns syntax trying to play with PCRE in location... but that is
another story ;o)

Glad I could help!
---
*B. R.*


On Thu, May 29, 2014 at 4:09 AM, Peter Mescalchin <
peter.mescalchin@gmail.com> wrote:

> Fantastic Igor - I didn't know that you could do named captures in Nginx -
> good to know.
>
> That solves it rather nicely.
>
> And thanks B.R. - yep, that syntax is part of PCRE.
>
>
> Pete
>
>
>
> > I think Igor is suggesting PERL named captures.
> >
> > Although, it appears to me the correct syntax would rather be
> (?<name>...),
> > as perlre docs <http://perldoc.perl.org/perlre.html#Extended-Patterns
> >state.
> > Then, just use you first syntax (omitting the 'set' directives).
> > ---
> > *B. R.*
> >
> >
> > On Wed, May 28, 2014 at 12:02 PM, Igor Sysoev <igor at sysoev.ru> wrote:
> >
> > > On 28 May 2014, at 08:55, Peter Mescalchin <peter.mescalchin at
> gmail.com>
> > > wrote:
> > >
> > > Thanks Igor,
> > >
> > > I had explored that method already, sadly (as you know) "alias" is
> > > given as an absolute path meaning I can't use this block of config
> within
> > > multiple virtual hosts which I include; - would have to re-write this
> same
> > > block of config for each Virtual host modifying the alias path prefix..
> > >
> > > And since alias man page explicitly states that $document_root can't be
> > > used it's not possible to complete this config in a reusable way. (e.g.
> > > alias $document_root/path/to/$1/$2; would be perfect).
> > >
> > > Alas, I think what I have (storing the captures in temp vars) is the
> only
> > > real solution thus far.
> > >
> > > Unless the penny hasn't dropped in my head? :)
> > >
> > >
> > > Then you can set these variable directly in regex:
> > > location ~
> "^/[a-f0-9]{16}/(<?resource_type>css|js)/(<?resource_path>.+)” {
> > >
> > >
> > > --
> > > Igor Sysoev
> > > http://nginx.com
>
> _______________________________________________
> nginx mailing list
> nginx@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

Request for a "no capture" rewrite directive enhancement

Peter Mescalchin May 27, 2014 07:54PM

Re: Request for a "no capture" rewrite directive enhancement

B.R. May 28, 2014 12:04AM

Re: Request for a "no capture" rewrite directive enhancement

Peter Mescalchin May 28, 2014 12:34AM

Re: Request for a "no capture" rewrite directive enhancement

Igor Sysoev May 28, 2014 12:46AM

Re: Request for a "no capture" rewrite directive enhancement

Peter Mescalchin May 28, 2014 12:56AM

Re: Request for a "no capture" rewrite directive enhancement

Igor Sysoev May 28, 2014 06:04AM

Re: Request for a "no capture" rewrite directive enhancement

B.R. May 28, 2014 11:42AM

Re: Request for a "no capture" rewrite directive enhancement

Igor Sysoev May 28, 2014 12:12PM

Re: Request for a "no capture" rewrite directive enhancement

Peter Mescalchin May 28, 2014 10:10PM

Re: Request for a "no capture" rewrite directive enhancement

B.R. May 28, 2014 10:48PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 91
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready