最近再部署测试环境时,考虑到我们的特殊需著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshuangnet】求,希望按模块进行发布测试,每个模块被放【本文受版权保护】著作权归作者所有,禁止商业用途转载。在一个文件夹中进行发布,所以不得不进行重【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。写,来让请求fallback到目录下的i【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】ndex.html. 例如当我们访问 /【未经授权禁止转载】著作权归作者所有,禁止商业用途转载。some-module/xxx/xxx 【转载请注明来源】【关注微信公众号:wwwtangshuangnet】时,实际上fallback到 /some本文作者:唐霜,转载请注明出处。【原创内容,转载请注明出处】-module/index.html。而【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】我们发布测试模块时增量的,所以可能过两天【作者:唐霜】【关注微信公众号:wwwtangshuangnet】会发布一个 any-module 来测试【关注微信公众号:wwwtangshuangnet】本文版权归作者所有,未经授权不得转载。,不大可能写死在 nginx 的 con【原创内容,转载请注明出处】【关注微信公众号:wwwtangshuangnet】fig 中。所以,我的想法是,在 ngi【版权所有】唐霜 www.tangshuang.net【作者:唐霜】nx 中实现一种配置,可以实现这种能力。著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】具体实现如下:
【本文首发于唐霜的博客】【本文首发于唐霜的博客】【未经授权禁止转载】location / {
try_files $uri $uri/ index.html @rewrite_uri;
}
location @rewite_uri {
if ($request_uri ~ /([a-z0-9_-:]+)/) {
set $tmp /$1/index.html;
rewrite ^ $tmp break;
}
}
使用 try_files 来在 ngin本文作者:唐霜,转载请注明出处。【原创内容,转载请注明出处】x 中实现 fallback 的能力。增【本文受版权保护】本文版权归作者所有,未经授权不得转载。加了一个 @rewrite_uri 的规【原创内容,转载请注明出处】【关注微信公众号:wwwtangshuangnet】则,这个规则里面,对 $request_【原创不易,请尊重版权】原创内容,盗版必究。uri 进行匹配,通过正则把顶层目录取出本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshuang.net来,在用 rewrite 进行规定。
未经授权,禁止复制转载。【原创不易,请尊重版权】通过这种方式,我们不仅可以去除顶层目录,【原创内容,转载请注明出处】本文作者:唐霜,转载请注明出处。而且可以实现我们想要的重写效果。
本文版权归作者所有,未经授权不得转载。【转载请注明来源】本文版权归作者所有,未经授权不得转载。

