Py学习  »  NGINX

nginx重写规则删除以下字符

Erik Denice • 6 年前 • 1229 次点击  

我不是重写专家,我对nginx重写规则有问题,我得到了网址:

www.mydomain.com/sales/reference/appartement-2-bedroom-city-miami/

我需要得到最终的网址,比如: www.mydomain.com/hello/reference/

所以我需要删除最后2个字符之间的所有字符/ 我需要搬走/搬走-两间卧室/只换一间/ 当然,在这个例子中,我有/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/

请帮忙。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/37995
 
1229 次点击  
文章 [ 1 ]  |  最新文章 6 年前
miknik
Reply   •   1 楼
miknik    6 年前

目前还不清楚需要重写的URL有多复杂,但是使用下面给出的两个示例,如果将以下内容放在配置的服务器级别,它将按您所说的进行操作:

rewrite ^(/sales/ref.+)/(.+) $1/ redirect;

此regex将捕获任何以 /sales/refXXX/ 后面有任意数量的字符,然后重写以删除后面的任何内容 销售/

X 可以是任何字符。