Devo servire la mia app tramite il mio server delle applicazioni all'indirizzo 8080
e i miei file statici da una directory senza toccare il server delle app. La configurazione di nginx che ho è qualcosa del genere ...
# app server on port 8080
# nginx listens on port 8123
server {
listen 8123;
access_log off;
location /static/ {
# root /var/www/app/static/;
alias /var/www/app/static/;
autoindex off;
}
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Ora, con questa configurazione, tutto funziona bene. Si noti che ilroot
direttiva è commentata.
Se attivo root
e disattivo il alias
- smette di funzionare. Tuttavia, quando rimuovo il finale /static/
dalroot
esso ricomincia a funzionare.
Qualcuno può spiegare cosa sta succedendo. Spiega inoltre in modo chiaro e dettagliato quali sono le differenze tra root
e alias
e i loro scopi.