Nginx: diferentes arquivos estáticos para URLs diferentes

0

Eu tenho dois aplicativos da web em execução no mesmo servidor, por exemplo, app1 e app2 .

app1 é o aplicativo ROOT, ou seja, será lançado sempre que alguém acessar o URL, por exemplo, link

app2 é outro aplicativo, que será atingido quando alguém acessar o URL, por exemplo, link

Estou usando o nginx como servidor da Web e o aplicativo da web tem seu próprio conteúdo estático (js, css, imagens) a ser exibido.

para app1 estou usando o seguinte,

 location ~* \.(js|css|png|jpg|jpeg|gif|ico) {
      root <path_to_tomcat>/webapps/ROOT;
      expires 1y;
      log_not_found off;
 }

isso funciona muito bem e o conteúdo estático é servido como um encanto.

E para app2 estou usando

 location ~* /newapp+\.(js|css|png|jpg|jpeg|gif|ico) {
      root <path_to_tomcat>/webapps/app2;
      expires 1y;
      log_not_found off;
 }

para app2 o conteúdo estático nunca é exibido.

Eu tentei pesquisar na net sobre isso, mas não obtive links exatos para veicular estática diferente com base em URLs.

    
por Gokul Kulkarni 31.05.2016 / 08:52

1 resposta

0

A diretiva root pode ser usada para construir caminhos físicos simples nos quais o URI forma a última parte do caminho.

Você pode mapear um URI como /newapp/resource.css usando root para algo como:

/path/to/tomcat/webapp/newapp/resource.css

Usando uma declaração root /path/to/tomcat/webapp; .

Se você precisar mapear o URI para um caminho físico que não contenha o URI inteiro, deverá usar outra técnica, como alias ou rewrite .

Pessoalmente, seria mais eficiente renomear o diretório e usar root .

Veja este e stis para detalhes.

    
por 31.05.2016 / 10:19