Domeno statiniai failai per Nginx VPS serveryje
Statiniams failams teikti ant NodeJS arba ant Express daromas static-serveris. Tiesą sakant, taip daryti nerekomenduojama, nes tai veikia lėtai.
Optimaliau statinį turinį teikti
per Nginx. Tam domenui daromas
specialus nustatymas,
kuriame yra reguliarusis reiškinys ir kelias į
statinių failų aplanką. Tarkime, pavyzdžiui,
mūsų domeno statinių failų aplankas
bus aplankas public.
Šiuo atveju mes surašysime
šiuos nustatymus:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/test1.com/public;
}
Tai nėra labai patogu, kad pavadinimą domeno mes turime parašyti du kartus, jei šis pavadinimas sutampa su svetainės aplanku (o mums patogumui sutampa). Problemą galima išspręsti taip:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/$server_name/public;
}
Sukonkinkime visus mūsų nustatymus kartu ir gausime:
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;
}
}
Sukonfigūruokite statinio turinio teikimą abiem testinėms svetainėms. Ištestuokite ją per naršyklę.