Statické súbory domény cez Nginx na VPS serveri

Na odovzdávanie statických súborov na NodeJS alebo na Express sa robí static-server. V skutočnosti sa to neodporúča, pretože to beží pomaly.

Optimálnejšie je odovzdávať statické súbory cez Nginx. Na to sa pre doménu vykoná špeciálne nastavenie, obsahujúce regulárny výraz a cestu k priečinku so statickými súbormi. Nech pre príklad v našej doméne priečinok so statickými súbormi bude priečinok public. V tomto prípade napíšeme nasledujúce nastavenia:

confserver_name test1.com;

location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {             
  root /var/www/test1.com/public;
}

Nie je veľmi pohodlné, že názov domény musíme napísať dva krát, ak tento názov zodpovedá priečinku webu (a u nás pre pohodlie zodpovedá). Problém je možné vyriešiť nasledujúcim spôsobom:

confserver_name test1.com;

location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {             
  root /var/www/$server_name/public;
}

Poďme zhromaždiť všetky naše nastavenia dohromady a získame nasledovné:

confserver {
  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;
  }
}
Задание 1

Nakonfigurujte odovzdávanie statických súborov pre obidva testovacie weby. Otestujte ho cez prehliadač.