File statici del dominio tramite Nginx su server VPS
Per servire file statici su NodeJS o su Express si crea un server static. In realtà, non è raccomandato farlo in questo modo, poiché funziona lentamente.
È più ottimale servire i contenuti statici
tramite Nginx. Per fare ciò, per il dominio
viene creata un'impostazione speciale,
contenente un'espressione regolare e il percorso alla
cartella con i contenuti statici. Supponiamo per esempio
che nel nostro dominio la cartella con i contenuti statici
sia la cartella public.
In questo caso imposteremo
le seguenti configurazioni:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/test1.com/public;
}
Non è molto conveniente che il nome del dominio debba essere scritto due volte, se questo nome coincide con la cartella del sito (e per nostra comodità coincide). Il problema può essere risolto nel modo seguente:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/$server_name/public;
}
Mettiamo insieme tutte le nostre impostazioni e otteniamo quanto segue:
server {
listen 80;
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/$server_name/public;
}
location / {
proxy_pass http://localhost:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Configura la distribuzione dei contenuti statici per entrambi i siti di test. Testala tramite il browser.