ä¸åŒçš„é‡å†™è§„则é‡å®šå‘相åŒçš„URL

时间:2017-01-30 07:34:59

标签: nginx

rewrite ^/old-url /new-url permanent; rewrite ^/old-url/old-url-sub /new-url/new-url-sub permanent;

2个网å€ï¼ˆ/ old-urlå’Œold-url / old-url-sub)é‡å®šå‘到相åŒçš„网å€ï¼ˆ / new-url )

有什么问题?

1 个答案:

答案 0 :(得分:1)

问题是正则表达å¼^/old-url与/old-url以åŠ/old-url/old-url-subå’Œ/old-url/anything-else匹é…。

因此,为两个URI调用了第一个rewrite语å¥ã€‚

如果您希望正则表达å¼ä»…匹é…整个字符串,则需è¦åœ¨æ¨¡å¼çš„æ­£é¢å’ŒèƒŒé¢ä½¿ç”¨é”šç‚¹ã€‚如您所知,^锚定模å¼çš„æ­£é¢ï¼Œè€Œ$锚定模å¼çš„背é¢ã€‚

å°è¯•ï¼š

rewrite ^/old-url$ /new-url permanent;

如果您å°è¯•å°†/old-url/xxxé‡å®šå‘到/new-url/xxx xxx,那么您将使用带有æ•èŽ·çš„å•ä¸ªrewrite语å¥ï¼š

rewrite ^/old-url(/.*)?$ /new-url$1 permanent;

请å‚阅this useful resource on regular expressions。