Nginx делает proxy_pass для завершения URL
Мой сервлет отправляет X-Accel-Redirect с полным URL-адресом, например / cached / http://example.com/test/index.html. Это должен быть полный URL из-за нашей бизнес-логики, которая определяет, где ресурс существует в сети.
И я хочу, чтобы nginx загружал контент с http://example.com/test/index.html и работал так, как если бы он исходил из исходного запроса URL. Таким образом, я не хочу делать переписать (или перенаправить). Я пытаюсь ниже упомянутых конф, но это не работает.
location /cached/(.*)$ {
proxy_pass $1;
}
Есть ли способ использовать абсолютный URL из совпадающего URI и сделать для него proxy_pass? Заранее спасибо.
1 ответ
Вы должны использовать регулярное выражение соответствия для местоположения
location ~ '/cached/(.*)$' {
# ^^^ this is for regex
proxy_pass $1?$args;
}