我有nginx主机由jekyll生成的静态网站的实例。
我在端口4000上添加了一个nodejs应用程序,并根据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”前缀。