Задать вопрос

Как проксировать запрос на динамический url?

Возможно ли проксировать запрос на url который является результатом регулярного выражения в блоке location?
Например:
У меня есть url вида
/path/to/example/(.*)
Такие запросы нужно проксировать на $1

Какие запросы могут случаться:
/path/to/example/http://google.com
/path/to/example//uploads/boobies.png

Всё что после /path/to/example/ - это валидный урл, на который нужно проксировать запрос.
Не пойму как такое можно устроить, и возможно ли это вообще?
  • Вопрос задан
  • 339 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@nirvimel
http {
    server {
        listen *:80
        resolver 8.8.8.8;
        location ~ /path/to/example/(.*) {
             try_files $1 /path/to/proxy/$1
        }
        location ~ /path/to/proxy/(.*) {
            proxy_pass http://$1;
        }
    }
}

Можете проверить: 127.0.0.1/path/to/example/google.com (но там сразу идет 301 редирект на HTTPS).

UPD: Довавил возможность отдачи локальной статики. Сам еще не тестировал это.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы