Fixed config parsing of the last try_files parameter.
Do not taste the last parameter against directory, as otherwise it would
result in the trailing slash being cut from the parameter value.
Notably, this prevents an internal redirect to an empty URI
if the parameter is set to the literal slash:
location / { try_files $uri /; }
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
index 741a80d..fb02dd4 100644
--- a/src/http/ngx_http_core_module.c
+++ b/src/http/ngx_http_core_module.c
@@ -4789,7 +4789,8 @@
tf[i].name = value[i + 1];
if (tf[i].name.len > 0
- && tf[i].name.data[tf[i].name.len - 1] == '/')
+ && tf[i].name.data[tf[i].name.len - 1] == '/'
+ && i + 2 < cf->args->nelts)
{
tf[i].test_dir = 1;
tf[i].name.len--;