Nginx 覆盖 ngx_http_index_module 目录索引处理

Nginx 覆盖 ngx_http_index_module 目录索引处理

Nginx 版本 1.4.6

自动索引关闭;

在没有中央路由端点的应用程序中,并且对于结构中没有索引的目录。*,我想要外部重定向而不是 403禁止或内部重定向。

app-root/
    app-core/
    config/
    lib/
    modules/
    templates/
index.php

鉴于上述情况,如果 app-core/lib/modules/templates/ 中都没有 index.*,并且没有server { location {}}配置覆盖,则对它们的任何请求都会导致 402 禁止响应。真恶心。

通过此配置,我可以内部重定向到实际索引。

location ~* ^/(app-core|config|lib|modules|templates)/$ {
    index /;
}

因此请求将http://localhost:xxxx/lib/服务于上面显示的 app-root/index.php。还算公平,但我认为还可以更好。

我宁愿发出 303查看其他并重定向到http://localhost:xxxx/,但我不知道如何让它工作。

答案1

它应该与此一起工作:

location ~* ^/(app-core|config|lib|modules|templates)/$ {
    return 303 http://localhost:xxxx/;
}

相关内容