Переписать URL, но показать оригинальный URL + Nginx

Я новичок в nginx. Я пытаюсь перенаправить на какую-то страницу ("example.com/randomText/abc") на страницу ("example.com/abc") с помощью nginx.

location ~ ^/(.*/abc){

#method 1
rewrite (.*) /abc break;

#method 2
#return 301 http://$host/abc;

#method 3
#proxy_pass http://$host/abc/;
#proxy_set_header Host $host;
#proxy_set_header X-Rewrite-URL $request_uri;
}

методы 1 и 2 работают, но он также изменяет URL на " http://example.com/abc", метод 3 возвращает с ошибкой 502.

1 ответ

Что вам нужно, это что-то вроде ниже

location ~ ^/[^/]+/abc {
   proxy_pass http://$host/abc;
}
Другие вопросы по тегам