Como configurar a raiz múltipla para o nginx?

3
location ~ {
            root /var/www/static1/;
            root /var/www/static2/;
        }

Eu tentei o acima, para que quando /name.gif for solicitado, se /var/www/static1/name.gif existir, use-o como está, mas se não houver esse arquivo, tente ver se há /var/www/static2/name.gif , se possível configurar o nginx dessa maneira?

    
por yum 07.04.2011 / 05:24

2 respostas

9

Supondo que você esteja usando o nginx 0.7.24 (?) ou posterior, você pode fazer isso com o try_files:

location / {
    root /var/www;
    try_files /static1$uri /static2$uri =404;
}

Normalmente, ter raiz dentro do local / é incorreto, mas neste caso específico, não acho que você queira definir / var / www como sua raiz geral caso você acabe adicionando outros locais.

    
por 12.04.2011 / 03:08
1

Tenho quase certeza de que sua configuração exata não é possível. Para veicular de várias raízes, você precisa codificar uma raiz em sua estrutura de URL, algo assim:

location  /images/ {
  alias  /path/to/images;
}
    
por 07.04.2011 / 05:31

Tags