我不是重写专家,我对nginx重写规则有疑问,我得到URL:
www.mydomain.com/sales/reference/appartement-2-bedroom-city-miami /
我需要获取最终网址,例如: www.mydomain.com/hello/reference /
所以我需要删除最后2个/之间的所有字符 我需要删除/ apartement-2-bedroom /,并仅替换一个/ 当然,在此示例中,我有/ appartement-2-bedroom-city-miami /,但从不相同,每个URL都不同。
下面我想要很多例子:
www.mydomain.com/sales/ref-458/appartement-2-bedroom-city-miami/必须变为: www.mydomain.com/sales/ref-458 /
其他示例:
www.mydomain.com/sales/ref-455/appartement-3-bedroom-with-terrace-city-miami/必须变为: www.mydomain.com/sales/ref-455 /
请一些帮助。
答案 0 :(得分:0)
尚不清楚您需要重写的URL有多复杂,但是使用您提供的两个示例,如果将以下内容放置在配置的服务器级别,它将按照您的意思进行操作:
rewrite ^(/sales/ref.+)/(.+) $1/ redirect;
此正则表达式将捕获以/sales/refXXX/
开头的所有带有任意数量字符的url,并将其重写以删除/sales/refXXX/
之后的所有内容
X
可以是任何字符。