Пара нюансов в NginX

Feb 20, 2018 18:55


Пара мелких нюансов в NginX, из серии "чтоб потом не забыть".

Допустим, хочется отдавать "/index.html" откуда-то из одной директории, а всё остальное - из какой-нибудь другой директории. Казалось бы, нет ничего проще. Пишем такой конфиг:
location = / {
root /some/foo/folder;
}

location / {
root /some/other/folder;
}

и с удивлением обнаруживаем, ( Read more... )

администрирование, hints, it, nginx

Leave a comment

Comments 2

yaun February 21 2018, 08:18:42 UTC
Не проще ли это было сделать средствами файловой системы?
Допустим, в каталоге /some/other/folder/ создать ссылку на index.html:
ln -s /some/foo/folder/index.html
При этом, директива disable_symlinks должна быть выставлена на off (вроде так и есть по умолчанию).
Можно ли проблему было решить добавлением директивы index /some/other/folder/index.html во втором location?

Reply

klink0v February 21 2018, 16:16:12 UTC
Зависит от конкретной задачи. Случаи разные бывают ©. Например, не хочется размещать каких-либо посторонних файлов в "/some/other/folder", может быть в эту папку пишет кто-то другой. Или, допустим, хочется запаролить доступ к каким-то папкам, но оставить возможность показывать index.html из эстетических соображений.

Абсолютные путь к файлу в директиве index считается не от корня файловой системы, а от корня обслуживаемой данным сервером папки. Так что нет, не прокатит.

Reply


Leave a comment

Up