У меня есть хосты nginx экземпляр статического сайта, сгенерированного jekyll.
Я добавил nodejs приложение на порте 4000, и сделайте согласно этому учебному руководству на DigitalOcean
server {
listen 80;
root /usr/share/nginx/html/example.com;
index index.html index.htm;
server_name example.com;
charset utf-8;
location /nodeapp/ {
proxy_pass http://localhost:4000/;
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;
}
}
Загрузки приложения, но все статические ресурсы добираются 404, потому что это ищет ресурс в example.com/nodeapp/css/main.css
например.
Как я зафиксировал бы это?
Вы можете добавить следующее перед любой логикой прокси и хранить ресурсы в каталоге в другом месте на машине:
location /static {
alias /location/for/all/static/assets;
}
Затем в вашем приложении сделайте префикс «/ static» для всех статических ресурсов.