Welcome! Log In Create A New Profile

Advanced

Re: NGINX Location Matching Question - Case insensitive matching at the start of a URI

Jonathan Matthews
December 05, 2013 06:42PM
On 5 December 2013 23:29, Brad Van Sickle <bvs7085@gmail.com> wrote:
>
> Hi,
>
> I'm running in a somewhat urgent issue where I have to make a
> case-insensitive location match on a URI segment that is at the
> beginning of the URI.
>
> so I want to match
>
> /uri-segment/*
> /URI-segment/*
> /Uri-Segment/*
> etc..
>
> I know that this will match the start of the URI:
> location ^~ /uri-segment

It will, but that's not what the regex-alike "^" means there. There,
it means "... and if this /does/ match, stop immediately and don't
consider any regex matches". See
http://wiki.nginx.org/HttpCoreModule#location for more information. (I
personally consider this a really bad choice of character by nginx -
it /always/ confuses me!)

> and this will match regardless of case:
> location ~* /uri-segment(.*)
>
> But chaining them together and using ^~*doesn't seem to work. Is this
> possible? If so what am I missing?

Seeing how you said this is urgent, I'll not do what I /normally/ do
and just give you pointers to the docs that'll help you :-)

You want

location ~* ^/uri-segment(.*) { }

HTH,
Jonathan

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

NGINX Location Matching Question - Case insensitive matching at the start of a URI

cls December 05, 2013 06:30PM

Re: NGINX Location Matching Question - Case insensitive matching at the start of a URI

Jonathan Matthews December 05, 2013 06:42PM

Re: NGINX Location Matching Question - Case insensitive matching at the start of a URI

cls December 05, 2013 06:52PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 147
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready