Statički fajlovi domena preko Nginx-a na VPS serveru
Za serviranje statičkih fajlova na NodeJS-u ili na Express-u pravi se statički server. Zapravo, to se ne preporučuje, jer radi sporo.
Optimalnije je servirati statiku
preko Nginx-a. Za ovo se za domen
pravi posebna konfiguracija,
koja sadrži regularni izraz i putanju do
foldera sa statikom. Neka za primer
u našem domenu folder sa statikom
bude folder public.
U ovom slučaju ćemo napisati
sledeće podešavanje:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/test1.com/public;
}
Pritom nije baš zgodno što ime domena moramo da napišemo dva puta, ako se to ime poklapa sa folderom sajta (a kod nas se radi praktičnosti poklapa). Problem se može rešiti na sledeći način:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/$server_name/public;
}
Hajde da skupimo sva naša podešavanja zajedno i dobijemo sledeće:
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;
}
}
Podesite serviranje statike za oba testna sajta. Testirajte je preko brauzera.