求助一个基础 Nginx 问题

2018-02-01 11:33:13 +08:00
 Cola90

location / { proxy_pass http://10.0.0.1; }

访问 /login.html 正常 访问 /login/login.html 提示 404,这时数据并不会转发到后端服务器。

问题:像 /login/login.html 这种有二级路径的应该怎样写 location? Nginx 有没有类似 Haproxy dafault backend 的选项?

2758 次点击
所在节点    Linux
7 条回复
234747005
2018-02-01 11:38:45 +08:00
location / { proxy_pass http://10.0.0.1; }
这一行就等于 http://10.0.0.1/
如果你是想 /login/login.html 等于 http://10.0.0.1/login/login.html
你就 z 这样改 location /login { proxy_pass http://10.0.0.1; }
Beebird
2018-02-01 11:39:36 +08:00
如果 location / 是唯一的规则的话,访问任意 uri 都必定会转发到后端 proxy 的,楼主应该是搞错了吧。
Cola90
2018-02-01 12:38:20 +08:00
@Beebird 是唯一规则,但是这地址 nginx 会在本地找资源,而不是转发到后端服务器,我也搞不懂
seers
2018-02-01 12:41:16 +08:00
proxy_pass http://10.0.0.1/;
panzhc
2018-02-01 12:51:14 +08:00
location /login { proxy_pass http://10.0.0.1/; }
加一个 location,ip 后面的斜杠不能少
JHerschel
2018-02-01 14:09:41 +08:00
@Beebird 说的没错,如果只有这一条规则的话,访问 /login/login.html 应该会被转发到 http://10.0.0.1/login/login.html;
Cola90
2018-02-01 14:45:53 +08:00
已解决,感谢楼上各位

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

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

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

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

© 2021 V2EX