求教一个 web 应用类型导致的 NGINX404 问题

2021-09-09 18:38:05 +08:00
 shanghai1943

远程机器上部署了 skywalking 链路追踪服务,在浏览器通过域名访问这个服务是正常的,页面内点击了 [追踪] 这个板块,页面正常切换到了这个板块,然后浏览器的 URL 也加上了 /trace 的后缀,但是如果直接刷新的话,会出现 404 的情况。

NGINX 配置如下

location / { proxy_pass http://localhost:1234; }

看起来像是一个单应用通过 js 切换页面然后修改浏览器地址。本人前端小白,瞎猜测的。

想问下这种类型的 web 应用该如何配置 NGINX 访问。

感谢。

908 次点击
所在节点    问与答
6 条回复
ashes1122
2021-09-10 08:15:42 +08:00
location ~/trace {
proxy_pass http://localhost:1234;
}
abccccabc
2021-09-10 09:42:16 +08:00
楼主,你的意思是页面使用了 js 的路由,页面 url 地址只能点击,不能刷新对吧?
试下这个:
location / {
try_files $uri $uri/ /index.html;
}
shanghai1943
2021-09-10 10:08:59 +08:00
@abccccabc #2 似乎不行。因为这个 web 应用是通过 ip:port 来访问的。这种配置方式应该是针对那种有 root /path/to/static/html 的有用的吧。
shanghai1943
2021-09-10 10:09:35 +08:00
@ashes1122 #1 这个可能只解决了 /trace 的问题,还有另外的页面比如 /a /b 之类的不能一一枚举。
dengshen
2021-09-10 15:21:36 +08:00
@shanghai1943 举一反三把固定的那个换成星号啊。。。
shanghai1943
2021-09-10 16:02:04 +08:00
@dengshen 额。恕我愚钝。貌似试了

location ~/* {

proxy_pass http://localhost:1234;

}

这样也不行。。

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

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

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

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

© 2021 V2EX