random_index

Директива 'random_index' позволяет NGINX выдавать файлы в случайном порядке из указанного каталога. — NGINX HTTP Core

random_index
location
Синтаксисrandom_index on | off;
По умолчаниюoff
Контекстlocation
МодульNGINX HTTP Core
Аргументыflag

Описание

Директива 'random_index' используется внутри location block для изменения поведения отображения списка файлов в каталоге. Когда директива установлена в 'on', NGINX будет случайным образом выбирать один из файлов в указанном каталоге для отдачи, вместо вывода всех доступных файлов в фиксированном порядке. Это особенно полезно в сценариях, когда в каталоге содержится большое количество файлов, позволяя пользователям видеть разные файлы при повторных посещениях и улучшая опыт просмотра в определённых случаях. Синтаксис директивы 'random_index' прост и принимает только флаг в качестве аргумента. Директива фактически влияет на вывод внутреннего обработчика при запросе каталога и оценивается в контексте location block. Она помогает снизить предсказуемость отдачи файлов, что может быть полезно в стратегиях доставки контента, где предпочтительны динамические результаты вместо статических списков файлов. На практике интеграция директивы 'random_index' сводится к добавлению её в соответствующий location block в конфигурации сервера. Важно отметить, что эта директива будет работать только если индексирование каталогов включено, обычно через директиву 'autoindex'. Поэтому она действует в сочетании с другими директивами, и правильная настройка сопутствующей конфигурации необходима для достижения ожидаемого поведения.

Пример конфига

location /files {
    autoindex on;
    random_index on;
}

Убедитесь, что 'autoindex' включён; иначе 'random_index' не будет работать.

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