On 5 December 2013 23:29, Brad Van Sickle <bvs7...@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

Reply via email to