Forum: NGINX 403 error logging

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
1266aa99d1601b47bbd3ec22affbb81c?d=identicon&s=25 B.R. (Guest)
on 2014-06-26 20:24
(Received via mailing list)
Hello,

I recently stumbled into a situation where I could not seem to find a
way
of disabling unwanted errors being logged.

Configuration:
location / {
    try_files $uri $uri/ @https;
}

location @https {
    return 301 https://$host$request_uri;
}

That works well for locations like '/foo' where it falls back to https
server.

However, when accessing root location '/', the '$uri/' part of the
try_files directive produces a 403 'directory index [...] is forbidden'.

I thought that adding 'error_page 403 @https;' to the prefix location
would
override it, but no.

I also tried to use 'error_page 403 = @https;' to pass error processing
to
the named location, hoping for the 301 redirection would cancel it.
Of course, that did not happen. ^^

Here are the solutions I envision, though none of them satisfy me:
1°) Using 'autoindex on;' in the prefix location: that is not the wanted
behavior
2°) Using 'try_files $uri @https;' in the prefix location would avoid
directory existence try... Although display of location /test if test is
an
existing directory won't happen and fallback to he HTTPS server will
occur.
That is not the wanted behavior
3°) Using 'error_page 403 = @https;' in the prefix location, then use
'error_log /dev/null;' in the named one, but that looks ugly, more like
a
'hack'.
Moreover, it does not seem to work.

What to do then?

Since it seems I cannot prevent 403 to spawn out of the prefix location,
is
there a way to send it to the named one and then trap it/ignore it
there?

Thanks,
---
*B. R.*
This topic is locked and can not be replied to.