最近使用单页应用,返回index.html
遇到了问题:
需求是这样的:有一个请求:/oper/
,不管是/oper/A
,/oper/B
,/oper/A/B
等等,我都想只返回同一个index.html
。
目前使用try_files
能实现,但是他会强制改变请求路径(重定向
);
我希望它能保证原始的请求路径不变
,如:请求/oper/B
之后不会重定向但是还是返回index.html
.
谢谢!
补充:我的nginx
版本为: 1.12.2
最近使用单页应用,返回index.html
遇到了问题:
需求是这样的:有一个请求:/oper/
,不管是/oper/A
,/oper/B
,/oper/A/B
等等,我都想只返回同一个index.html
。
目前使用try_files
能实现,但是他会强制改变请求路径(重定向
);
我希望它能保证原始的请求路径不变
,如:请求/oper/B
之后不会重定向但是还是返回index.html
.
谢谢!
补充:我的nginx
版本为: 1.12.2
15 回答8.2k 阅读
2 回答2.4k 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
3 回答973 阅读
3 回答1.5k 阅读
1 回答706 阅读
try_files
是可以的,不会响应30x跳转也可以用
rewrite
对比下两者的优缺点:
try_files
可以兼顾文件存在的情况,不过会多一些磁盘操作rewrite
无磁盘操作,不过无法兼顾文件存在的情况如果是单纯的需要将
/oper/
开头的所有请求返回/index.html
,建议使用rewrite