嵌套 nginx 获取不到静态资源导致访问出 404 ?

2021-03-31 17:49:10 +08:00
 tyit
有个 vue 项目,部署到了内网,外网也是一个 nginx,是别人家的,借用做入口。入口这个 nginx 不给放静态资源。

访问入口的时候,加载资源不到,导致访问出 404 。有什么办法,能实现访问入口 nginx 的时候去后面的 nginx 获取静态资源嘛?

入口 nginx 配置

location ^~ /abc {
proxy_pass http://10010/abc;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Forwarded-Proto "https";
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Real-IP $remote_addr;
}

加上这个可以加载到后端的静态资源,但是入口的静态网站,静态资源也会 proxy_pass http://10010/$1;
入口哪有个静态网站,不给这么配置。

#location ~ .*\.(js|css|jpg|jpeg|gif|png|ico|pdf|txt)$ {
# if ($request_uri ~* "^/icenter/(.*)$") {
# proxy_pass http://10010/$1;
# }
# }


后面的 nginx 配置

server {

listen 80;
server_name _;
root /usr/share/nginx/html;

include /etc/nginx/default.d/*.conf;

location /abc {

alias /usr/share/nginx/html/;

}
838 次点击
所在节点    NGINX
1 条回复
szpunk
2021-10-27 05:54:18 +08:00
location ~ ^/abc .*\.(js|css|jpg|jpeg|gif|png|ico|pdf|txt)$ {
if ($request_uri ~* "^/icenter/(.*)$") {
proxy_pass http://10010/$1;
}
}

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/766945

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX