Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero
El parámetro levels en Nginx puede aceptar hasta tres niveles jerárquicos de subdirectorios, y cada nivel puede tener valores de 1 o 2, lo que significa que puedes configurarlo de las siguientes maneras:
Formas válidas de usar levels:
levels=1levels=2levels=1:1levels=1:2levels=2:1levels=2:2levels=1:1:1levels=1:1:2levels=1:2:1levels=1:2:2levels=2:1:1levels=2:1:2levels=2:2:1levels=2:2:2
¿Qué significa cada valor?
- Un valor de 1 significa que el subdirectorio usará 1 carácter del hash MD5 para nombrar el directorio.
- Un valor de 2 significa que el subdirectorio usará 2 caracteres del hash MD5.
El máximo posible sería:
levels=2:2:2
Ejemplo con levels=2:2:2:
Supongamos que el hash MD5 de la clave de caché es: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p
Con levels=2:2:2:
- Primer nivel: Se toman los 2 primeros caracteres del hash →
a1 - Segundo nivel: Se toman los 2 siguientes caracteres →
b2 - Tercer nivel: Se toman los 2 siguientes caracteres →
c3
La estructura del archivo sería:
/data/nginx/cache/a1/b2/c3/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p
Límite práctico de niveles
Aunque técnicamente puedes usar hasta levels=2:2:2, en la mayoría de los casos, levels=1:2 o levels=2:2 son suficientes. Esto se debe a que demasiados niveles pueden ser excesivos y aumentar el tiempo de acceso al archivo, especialmente si el sistema de archivos ya maneja directorios con eficiencia.
Recomendación común:
- Para cachés pequeñas/medianas:
levels=1:2 - Para cachés grandes (millones de archivos):
levels=2:2olevels=2:2:2si es realmente necesario.