301 executes before authentication

Grant emailgrant at gmail.com
Tue Oct 6 13:15:47 UTC 2015


> Rewrites will execute before authentication module handlers run; this is a
> function of how Nginx is designed, and this order isn't configurable. See
> http://forum.nginx.org/read.php?2,41891,43112#msg-43112 and
> http://www.nginxguts.com/2011/01/phases/.


In that case, can anyone figure out how to rewrite this config without
a redirect so that munin can be accessed with host:port?  I worked on
it for quite a bit but couldn't come up with anything functional.

location = / {
    return 301 https://$host:$server_port/munin/;
}

location /munin {
    fastcgi_split_path_info ^(/munin)(.*);
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_pass unix:/var/run/munin/fcgi-html.sock-1;
    include fastcgi_params;
}

- Grant


>>> I have a server block that contains the following:
>>>
>>> auth_basic "Please log in.";
>>> location = / {
>>>     return 301 https://$host:$server_port/folder/;
>>> }
>>>
>>> I noticed that /folder/ is appended to the URL before the user is
>>> prompted for authentication.  Can that behavior be changed?
>>>
>>> - Grant



More information about the nginx mailing list