VPS серверіндегі Nginx арқылы доменнің статикалық файлдары
NodeJS немесе Express үшін статикалық файлдарды жеткізу static-сервер арқылы жасалады. Шын мәнінде, мұны істеу ұсынылмайды, себебі бұл баяу жұмыс істейді.
Статиканы Nginx арқылы жеткізу оңтайлырақ. Ол үшін домен
үшін арнайы баптау жасалады, ол регулярлы өрнек пен
статикалық файлдар салынған буманың жолын қамтиды.
Мысал ретінде біздің домендегі статикалық бума
public бумасы болсын.
Бұл жағдайда біз келесі баптауларды жазамыз:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/test1.com/public;
}
Бұл өте ыңғайлы емес, себебі біз домен атауын екі рет жазуымыз керек, егер бұл атау сайт бумасымен сәйкес келсе (бізде ыңғайлылық үшін ол сәйкес келеді). Мәселені келесі түрде шешуге болады:
server_name test1.com;
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js|swf|txt|ico)$ {
root /var/www/$server_name/public;
}
Барлық баптаулармызды біріктіріп, келесіні алайық:
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;
}
}
Екі сынақтық сайт үшін статиканы жеткізуді баптаңыз. Оны браузер арқылы тексеріңіз.