Как удалить два конкретных символа из param из URL NGINX
У меня есть этот URL-адрес xxxxx.com/xxxx/xx-xx-2/xxxx и я хочу удалить "-2" из второго параметра в URL, и что он остается таким образом xxxxx.com/xxxx/xx-xx/xxxx, The "-2" является случайным. я понятия не имею, как это сделать:(любая помощь будет признательна.
Мои извинения за мой плохой английский
1 ответ
Вы должны добавить ниже
location ~ /[^/]+/[^/]+-[\d+]/ {
rewrite ^/([^/]+/[^/]+)-[\d+]/(.*) $1/$2 redirect;
}
В URL /part1/part2-number/
/[^/]+
Матчи /part1
, /[^/]+
Матчи /part2
а также -[\d+]/
соответствие -number
а затем переписать его, чтобы удалить номер
Результаты теста:
$ curl -I localhost/tarun/lalwani-2/abc
HTTP/1.1 302 Moved Temporarily
Server: openresty/1.11.2.2
Date: Fri, 06 Oct 2017 11:44:23 GMT
Content-Type: text/html
Content-Length: 167
Location: http://localhost/tarun/lalwani/abc
Connection: keep-alive
$ curl -I localhost/tarun/lalwani-10/abc
HTTP/1.1 302 Moved Temporarily
Server: openresty/1.11.2.2
Date: Fri, 06 Oct 2017 11:44:27 GMT
Content-Type: text/html
Content-Length: 167
Location: http://localhost/tarun/lalwani/abc
Connection: keep-alive