我目前正试图弄清楚是否有可能重写
http://example.com/sc5147006x0SvS.gif
进入这个:
http://example.com/14/06/sc5147006x0SvS/sc5147006x0SvS.gif
用户仍然使用以前的网址作为地址。
14和06文件夹存在于:
sc5 14 70 06 x0SvS
编辑:14和06总是在同一个地方,他们只是改变价值。
有没有办法在提取后从字符串中选择那些部分?
答案 0 :(得分:2)
您可以使用rewrite
:
rewrite ^((/...(..)..(..).+)\.gif)$ /$3/$4$2$1 last;
位置或alias
:
location ~ ^((/...(..)..(..).+)\.gif)$ {
alias /path/to/root/$3/$4$2$1;
}
答案 1 :(得分:0)
如果您的字符串长度是明确的,如示例所示。您可以使用正则表达式:
(?<=\w\/)((.{3}(.{2}).{2}(.{2}).+)\..+)$
Demo
这里的组是:
1 = sc5147006x0SvS.gif
2 = sc5147006x0SvS
3 = 14
4 = 06
现在使用这些组来形成结果URL。