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' 的语法很简单,只接受一个标志参数(flag argument)。该指令在请求目录时会影响内部处理器的输出,并在 location block 的上下文中进行评估。它有助于降低文件提供的可预测性,可能有利于在更偏好动态结果而非静态文件列表的内容交付策略中使用。实际上,将 'random_index' 集成到配置中只需将其添加到服务器配置中的相应 location block 即可。 一个重要的注意事项是,只有在启用了目录索引(通常通过 'autoindex' 指令)时,该指令才会生效。因此,它与其他指令协同工作,确保伴随配置的正确设置对于实现所需功能至关重要。

配置示例

location /files {
    autoindex on;
    random_index on;
}

确保已启用 'autoindex';否则 'random_index' 将无法工作。

如果用户频繁刷新,随机文件选择可能导致意外行为。