【问题标题】:NGINX - location is overriding root - 404 for any static fileNGINX - 位置覆盖根 - 任何静态文件的 404
【发布时间】:2023-03-23 16:59:01
【问题描述】:

这不是最好的标题,但它适合我的问题。

我一直在尝试将 Angular 前端和 nodejs rest api 放在同一个域下,并在同一个服务器下的 nginx 中。

当我尝试在没有角度位置的情况下从“/public”访问任何静态文件时,一切正常,但使用角度时,我总是找不到 404。

请来人帮忙:/ 提前致谢

第一次编辑-------------------- 在文本中添加图片内容

server { 
listen      80;
server_name subddomain.domain.com;
root /var/www/public/;

location ^~ /api {
    proxy_pass http://127.0.0.1:3000;
}

location / {
    proxy_pass http://127.0.0.1:7080;
}

}

【问题讨论】:

  • 把配置作为文本,而不是截图

标签: angularjs node.js nginx dns


【解决方案1】:

将您的根位置更改为以下并添加@backend 位置:

location / {
    try_files $uri $uri/ @backend;
}

location @backend {
    proxy_pass http://127.0.0.1:7080;
}

try_files 将尝试提供来自root directive 的文件,如果找不到,它将回退到@backend

【讨论】:

猜你喜欢
  • 2014-06-06
  • 2014-06-07
  • 2017-06-05
  • 1970-01-01
  • 2021-01-12
  • 2020-12-25
  • 2016-09-24
  • 2015-11-30
  • 2018-08-18
相关资源
最近更新 更多