Welcome! Log In Create A New Profile

Advanced

Re: Как работает / как отлючить директиву index

Maxim Dounin
September 16, 2013 08:44AM
Hello!

On Mon, Sep 16, 2013 at 04:00:47AM -0400, Yury Pavlovsky wrote:

> Спасибо, документацию читал.
> Повторюсь, исчерпывающего формального описания работы директивы там нет,
> передан лишь её смысл. Видимо, раз в документации никто до этого не написал,
> вряд ли мне стоит рассчитывать, что напишут тут, тем более что знают это
> только разработчики...

Повторюсь - прочитайте присланную ссылку ещё раз, внимательно. В
частности, со вот этот кусок:

: Обработка запроса “/” более сложная. Ему соответствует только
: префиксный location “/”, поэтому запрос обрабатывается в нём.
: Затем директива index проверяет существование индексных файлов
: согласно своих параметров и директиве “root /data/www”. Если файл
: /data/www/index.html не существует, а файл /data/www/index.php
: : существует, то директива делает внутреннее перенаправление на
: “/index.php” и nginx снова сопоставляет его с location’ами, как
: если бы такой запрос был послан клиентом. Как мы видели ранее,
: перенаправленный запрос будет в конечном итоге обработан сервером
: FastCGI.

http://nginx.org/ru/docs/http/request_processing.html

На заданный вами вопрос о порядке проверки индексных файлов и
location'ов он совершенно однозначно отвечает. Как разработчик
могу также уверить вас, что знают это - не только разработчики.

> Если есть способ отключить директиву "наверняка", напишите, пожалуйста.
> Думал можно пересобрать nginx без модуля ngx_http_index_module, но мой
> `nginx -V` (оф дебиан-репозитарий) не содержит ngx_http_index_module. Видимо
> этот модуль вшили в ядро?

Модуль index не отключается и всегда обрабатывает запросы,
оканчивающиеся слэшом, если обработка не перехвачена каким-либо из
безусловных обработчиков (proxy_pass, fastcgi_pass и т.п.) и/или
не прервана в процессе обриботки. Если очень хочется, чтобы index
не работал никогда, можно сделать так:

location ~ /$ { return 403; }

Но я сомневаюсь, что такая конфигурация вас устроит, с учётом
того, что обычно даже самый простой сайт требует index для
корректной работы. См. документацию выше.

--
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Как работает / как отлючить директиву index

Yury Pavlovsky September 13, 2013 01:49PM

Re: Как работает / как отлючить директиву index

Maxim Dounin September 16, 2013 03:16AM

Re: Как работает / как отлючить директиву index

Yury Pavlovsky September 16, 2013 04:00AM

Re: Как работает / как отлючить директиву index

Васильев "Zmey!" Олег September 16, 2013 07:40AM

Re: Как работает / как отлючить директиву index

Maxim Dounin September 16, 2013 08:44AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 164
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready