Не подгружаются клиентские скрипты в dev режиме. Приложение стандартно запускается на 3000 порту. Запросы обрабатывает nginx и проксирует их к серверу приложения. В продакшен режиме все нормально, билд собран, файлы физически существуют и находятся по соответствующим путям. Проблема начинается при работе в dev режиме, как мы знаем, в таком случае файлы не создаются на диске а просто хранятся в памяти и сервер приложения сам разруливает, какой контент отдавать когда запрашиваются те или иные скрипты (подобные
https://site.com/_nuxt/runtime.js https://site.com/_nuxt/vendors.app.js). И все это корректно работает, только когда запросы обращаются на прямую к серверу приложения. Т.е. например, мы стандартно запускаем на локальной машине сервер и обращаемся из браузера к localhost:3000 все отработает как и положено - сервер сгенерировал html, отдал браузеру, он в свою очередь строит dom, обнаруживает скрипты, запрашивает их, получает. В случае с проксированием, это не работает. Может кто знает как это настраивается, если это вообще настраивается? Уточню, nginx проксирует все запросы на сервер приложения. Ниже, на всякий случай, прикрепляю упрощенный листинг конфигурации хоста, концептуально настраивается именно так, все что убрал сути не меняет.
server
{
listen 443 default_server ssl http2;
listen [::]:443 ssl http2;
root /path/to/webroot;
server_name site.com;
charset utf-8;
include settings/ssl;
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_pass http://127.0.0.1:3000;
proxy_cache_bypass $http_upgrade;
}
}