Nginx - Exibindo conteúdo estático da estrutura de diretórios profundos

1

Eu tenho que armazenar um monte de imagens (digamos 1M) para veiculação do Nginx, então, para evitar ter muitos arquivos em uma pasta, estou planejando dividi-los em pastas com nomes relacionados ao nome do arquivo, por exemplo:

/images/1/5/3/153.png

(percebo que existem métodos para alcançar uma distribuição mais uniforme, mas acho que isso será adequado às nossas necessidades)

No entanto, gostaria que fossem acessíveis a partir de uma URL sem a estrutura de diretórios, por exemplo:

/images/153.png

É possível realizar isso em Nginx com, e. Reescrita de URL?

    
por UpTheCreek 12.12.2012 / 12:20

1 resposta

0

Ah, encontrei na documentação (não vi isso antes). Parece bastante simples com o HttpRewriteModule .

Note: for curly braces( { and } ), as they are used both in regexes and for block control, to avoid conflicts, regexes with curly braces are to be enclosed with double quotes (or single quotes). For example, to rewrite URLs like:

/photos/123456 to:

/path/to/photos/12/1234/123456.png use the following (note the quotes enclosing the regex):

rewrite "/photos/([0-9] {2})([0-9] {2})([0-9] {2})" /path/to/photos/$1/$1$2/$1$2$3.png;

    
por 12.12.2012 / 12:57

Tags