Problem with rewrite regexes when the URL contains a trailing slash (nginx-1.5.0)

Roberto F. robertof.public at gmail.com
Wed May 22 21:15:58 UTC 2013


Hello -- just writing again to say that I did it! I found on the web 
(just Google) a Cygwin build of nginx and it works perfectly.
Thanks for your support!
Robertof

Il 22/05/2013 21:12, Maxim Dounin ha scritto:
> Hello!
>
> On Wed, May 22, 2013 at 08:40:43PM +0200, Roberto F. wrote:
>
>> Hello.
>> I'm having a problem with nginx's rewrite directive.
>> Basically, when the URL contains a trailing point, it is ignored by
>> the rewrite regexp.
>> Let's do an example:
>> I load http://uri/something. (with the trailing point). Then, with
>> the rewrite rule:
>> rewrite ^/something\.$ /index.html
>> I should see 'index.html', but instead that appears in the logfile
>> (with rewrite_log set at on):
>> 2013/05/22 20:36:07 [notice] 6256#1440: *57 "^/something\.$" does
>> not match "/something", client: 127.0.0.1, server: localhost,
>> request: "GET /something. HTTP/1.1", host: "localhost"
>> As you can see, the trailing point is missing from the "does not
>> match" part of the log.
>>
>> Is there any workaround for that?
> Are you using nginx/Windows?  On Windows trailing dots and spaces
> in URIs are ignored as they aren't significant from filesystem
> point of view and otherwise can be used to bypass access
> restrictions.
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20130522/034bbf9a/attachment.html>


More information about the nginx mailing list