Fișiere statice ale domeniului prin Nginx pe server VPS
Pentru a servi fișiere statice pe NodeJS sau pe Express, se creează un server static. De fapt, acest lucru nu este recomandat, deoarece funcționează lent.
Este mai optim să serviți conținutul static
prin Nginx. Pentru aceasta, pentru domeniu
se face o configurare specială,
care conține o expresie regulată și calea către
directorul cu fișiere statice. Să presupunem, de exemplu,
că în domeniul nostru directorul cu fișiere statice
va fi directorul public.
În acest caz, vom configura
următoarele setări:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/test1.com/public;
}
În acest caz, nu este foarte convenabil că numele domeniului trebuie să-l scriem de două ori, dacă acest nume coincide cu directorul site-ului (și pentru comoditate, la noi coincide). Problema poate fi rezolvată în felul următor:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/$server_name/public;
}
Să adunăm toate setările noastre împreună și vom obține următoarele:
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ți servirea conținutului static pentru ambele site-uri test. Testați-l prin browser.