Nginx версии 1.4.6
автоиндекс выключен;
В приложении, не имеющем центральной конечной точки маршрутизации, и для каталогов в структуре, у которых вообще нет index. *, Я хочу выполнить внешнее перенаправление, а не 403 Запрещено или внутреннее перенаправление.
app-root/
app-core/
config/
lib/
modules/
templates/
index.php
Учитывая вышеизложенное, если ни один из app-core / lib / modules / templates / не имеет index. *, Без server { location {}}
покрытия конфигурации, любой запрос к ним приводит к 402 запрещенному ответу. Ой.
С помощью этой конфигурации я могу внутренне перенаправить на реальный index.
location ~* ^/(app-core|config|lib|modules|templates)/$ {
index /;
}
Итак, просьба к http://localhost:xxxx/lib/
обслуживает app-root / index.php, показанный выше. Достаточно честно, но я думаю, что могло быть лучше.
Я бы скорее выпустил 303 См. Другое и перенаправить на http://localhost:xxxx/
но я не могу понять, как заставить его работать.
Он должен работать с этим:
location ~* ^/(app-core|config|lib|modules|templates)/$ {
return 303 http://localhost:xxxx/;
}